{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "9c3a5e62",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch    : 1.12.1\n",
      "lightning: 2022.9.15\n",
      "\n"
     ]
    }
   ],
   "source": [
    "%load_ext watermark\n",
    "%watermark -p torch,lightning"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "292759a7",
   "metadata": {},
   "outputs": [],
   "source": [
    "import lightning as L\n",
    "import torch\n",
    "import torch.nn.functional as F\n",
    "import torchmetrics\n",
    "from lightning.pytorch.loggers import CSVLogger\n",
    "\n",
    "from shared_utilities import CustomDataModule"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "ef478510-97a2-497c-8831-bb594b753d85",
   "metadata": {},
   "outputs": [],
   "source": [
    "num_epochs = 200"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cbcee9b9-40cf-4083-b36e-b09fe28e4ee2",
   "metadata": {},
   "source": [
    "### With Restarts"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "f9bf7772",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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jY2N7jHffPONunXr1uQO9jArjCZoAIAhXgegkpISd0Bp166dqqurJUkjR470+l5gubm5ev7557Vo0SJt2bJFEyZMUElJiXJyciQd7s257bbb3ONzcnK0Y8cO5ebmasuWLVq0aJHy8vI0ceJE95h7771XFRUVGjdunL755hu9++67+tOf/qQxY8Z4O1X4GE3QAABTvO4Bio+PV0VFhZKSkpSUlKRPP/1U/fr1U3Fxsbsfp6Wys7NVUVGhGTNmqLS0VCkpKcrPz3eftl5aWqqSkhL3+OTkZOXn52vChAmaO3euEhISNGfOHPcp8JKUmJiopUuXasKECTr//PN1xhlnaNy4cXrooYe8nSp8jCZoAIApXgegyy+/XO+884769++vUaNGacKECXrttde0bt0698USvXHffffpvvvua/axF198scm2Sy+99ISN1unp6fr000+9rgX2ogkaAGCK1wFo4cKF7v6anJwcderUSatXr9Y111zjPnQFtARN0AAAU7wKQPX19Xrsscd01113KTExUZJ000036aabbvJJcWjbwlgBAgAY4lUTdFhYmGbNmqWGhgZf1YMgEnKkCbqBJmgAgM28Pgvsiiuu0IoVK3xQCoJNGIfAAACGeN0DlJWVpcmTJ+vLL79Uampqk9tiDBs2rNWKQ9tGEzQAwBSvA9C9994r6fCd3H/O4XBweAwtRhM0AMAUrwPQ0VdYBk4FTdAAAFO87gECWgtN0AAAUwhAMIZ7gQEATCEAwZgQAhAAwBACEIzhXmAAAFMIQDCGJmgAgClenwVWVVXV7HaHwyGn06mIiIhTLgrB4acmaMOFAACCjtcB6PTTT5fjyAdXc7p376477rhD06dPV0gIC0w4trBQVw8Ql1YAANjL6wD04osvasqUKbrjjjv0q1/9SpZlae3atXrppZc0depU/fDDD3ryySfldDr18MMP+6JmtBHuFSAOgQEAbOZ1AHrppZf0l7/8xeMO8MOGDdN5552nZ599Vh9++KF69Oihxx57jACE4wrlLDAAgCFeH6MqLCzUhRde2GT7hRdeqMLCQknSxRdfrJKSklOvDm0aAQgAYIrXAah79+7Ky8trsj0vL0+JiYmSpIqKCnXs2PHUq0ObFkoTNADAEK8PgT355JO68cYb9d577+mXv/ylHA6H1q5dq6+//lqvvfaaJGnt2rXKzs5u9WLR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DRs2eLwva2pqLMuyrG+//dZ69NFHrbVr11rFxcXWu+++a51zzjnWhRde6Bfzs6zjz7Glf5f+vA8t68R/p5ZlWZWVlVb79u2t+fPnN3m+v+/HE30+WJZ/vBcJQDaaO3eulZSUZEVERFj9+/f3OGU80Ehq9uuFF16wLMuyDh48aGVmZlpdunSxwsPDrR49eli33367VVJSYrbwFsrOzra6detmhYeHWwkJCdYNN9xgbd682f14Y2OjNX36dCs+Pt5yOp3WJZdcYm3atMlgxSfngw8+sCRZW7du9dgeqPtv+fLlzf5d3n777ZZltWy//ec//7Huv/9+q1OnTla7du2sq6++2m/mfbz5FRcXH/N9uXz5csuyLKukpMS65JJLrE6dOlkRERFW7969rbFjx1oVFRVmJ3aU482xpX+X/rwPLevEf6eWZVnPPvus1a5dO2vfvn1Nnu/v+/FEnw+W5R/vRceRYgEAAIIGPUAAACDoEIAAAEDQIQABAICgQwACAABBhwAEAACCDgEIAAAEHQIQAAAIOgQgAAAQdAhAANACDodDb731lukyALQSAhAAv3fHHXfI4XA0+RoyZIjp0gAEqDDTBQBASwwZMkQvvPCCxzan02moGgCBjhUgAAHB6XQqPj7e46tjx46SDh+emj9/vrKystSuXTslJyfrH//4h8fzN23apMsvv1zt2rVT586ddc8992j//v0eYxYtWqRzzz1XTqdT3bp10/333+/xeHl5ua6//nq1b99eZ555pt5++23fThqAzxCAALQJ06ZN0/Dhw7Vx40b97ne/0y233KItW7ZIkg4ePKghQ4aoY8eOWrt2rf7xj39o2bJlHgFn/vz5GjNmjO655x5t2rRJb7/9tn7xi194/I5HH31UN910k7744gsNHTpUI0aM0N69e22dJ4BW0mr3lQcAH7n99tut0NBQKyoqyuNrxowZlmVZliQrJyfH4zkDBgyw7r33XsuyLGvhwoVWx44drf3797sff/fdd62QkBCrrKzMsizLSkhIsKZMmXLMGiRZU6dOdf+8f/9+y+FwWO+9916rzROAfegBAhAQBg0apPnz53ts69Spk/v79PR0j8fS09O1YcMGSdKWLVvUr18/RUVFuR+/6KKL1NjYqK1bt8rhcGj37t36zW9+c9wazj//fPf3UVFRio6O1p49e052SgAMIgABCAhRUVFNDkmdiMPhkCRZluX+vrkx7dq1a9HrhYeHN3luY2OjVzUB8A/0AAFoEz799NMmP59zzjmSpL59+2rDhg06cOCA+/FPPvlEISEhOuussxQdHa2ePXvqww8/tLVmAOawAgQgINTU1KisrMxjW1hYmGJjYyVJ//jHP5SWlqaLL75Yr7zyij777DPl5eVJkkaMGKHp06fr9ttv1yOPPKIffvhBDzzwgEaOHKm4uDhJ0iOPPKKcnBx17dpVWVlZqq6u1ieffKIHHnjA3okCsAUBCEBAeP/999WtWzePbWeffba+/vprSYfP0Fq8eLHuu+8+xcfH65VXXlHfvn0lSe3bt9cHH3ygcePG6Ze//KXat2+v4cOH66mnnnK/1u23365Dhw7p6aef1sSJExUbG6vf/va39k0QgK0clmVZposAgFPhcDj05ptv6rrrrjNdCoAAQQ8QAAAIOgQgAAAQdOgBAhDwOJIPwFusAAEAgKBDAAIAAEGHAAQAAIIOAQgAAAQdAhAAAAg6BCAAABB0CEAAACDoEIAAAEDQ+f9/qn0MKp8+ngAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "model = torch.nn.Linear(1, 1)\n",
    "optimizer = torch.optim.SGD(model.parameters(), lr=0.1)\n",
    "scheduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=30, gamma=0.5)\n",
    "lrs = []\n",
    "\n",
    "\n",
    "for i in range(num_epochs):\n",
    "    optimizer.step()\n",
    "    lrs.append(optimizer.param_groups[0][\"lr\"])\n",
    "    scheduler.step()\n",
    "\n",
    "plt.ylabel(\"Learning rate\")\n",
    "plt.xlabel(\"Epoch\")\n",
    "plt.plot(lrs)\n",
    "plt.savefig('2-step-decay_lr.pdf')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "ce808943-a20e-44d2-9303-c897226b37df",
   "metadata": {},
   "outputs": [],
   "source": [
    "class PyTorchMLP(torch.nn.Module):\n",
    "    def __init__(self, num_features, num_classes):\n",
    "        super().__init__()\n",
    "\n",
    "        self.all_layers = torch.nn.Sequential(\n",
    "            # 1st hidden layer\n",
    "            torch.nn.Linear(num_features, 100),\n",
    "            torch.nn.BatchNorm1d(100),\n",
    "            torch.nn.ReLU(),\n",
    "            \n",
    "            # 2nd hidden layer\n",
    "            torch.nn.Linear(100, 50),\n",
    "            torch.nn.BatchNorm1d(50),\n",
    "            torch.nn.ReLU(),\n",
    "            \n",
    "            # output layer\n",
    "            torch.nn.Linear(50, num_classes),\n",
    "        )\n",
    "\n",
    "    def forward(self, x):\n",
    "        x = torch.flatten(x, start_dim=1)\n",
    "        logits = self.all_layers(x)\n",
    "        return logits"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "59a6a00d",
   "metadata": {},
   "outputs": [],
   "source": [
    "class LightningModel(L.LightningModule):\n",
    "    def __init__(self, model, learning_rate, cosine_t_max):\n",
    "        super().__init__()\n",
    "\n",
    "        self.learning_rate = learning_rate\n",
    "        self.cosine_t_max = cosine_t_max\n",
    "        self.model = model\n",
    "\n",
    "        self.save_hyperparameters(ignore=[\"model\"])\n",
    "\n",
    "        self.train_acc = torchmetrics.Accuracy()\n",
    "        self.val_acc = torchmetrics.Accuracy()\n",
    "        self.test_acc = torchmetrics.Accuracy()\n",
    "\n",
    "    def forward(self, x):\n",
    "        return self.model(x)\n",
    "\n",
    "    def _shared_step(self, batch):\n",
    "        features, true_labels = batch\n",
    "        logits = self(features)\n",
    "\n",
    "        loss = F.cross_entropy(logits, true_labels)\n",
    "        predicted_labels = torch.argmax(logits, dim=1)\n",
    "        return loss, true_labels, predicted_labels\n",
    "\n",
    "    def training_step(self, batch, batch_idx):\n",
    "        loss, true_labels, predicted_labels = self._shared_step(batch)\n",
    "\n",
    "        self.log(\"train_loss\", loss)\n",
    "        self.train_acc(predicted_labels, true_labels)\n",
    "        self.log(\n",
    "            \"train_acc\", self.train_acc, prog_bar=True, on_epoch=True, on_step=False\n",
    "        )\n",
    "        return loss\n",
    "\n",
    "    def validation_step(self, batch, batch_idx):\n",
    "        loss, true_labels, predicted_labels = self._shared_step(batch)\n",
    "\n",
    "        self.log(\"val_loss\", loss, prog_bar=True)\n",
    "        self.val_acc(predicted_labels, true_labels)\n",
    "        self.log(\"val_acc\", self.val_acc, prog_bar=True)\n",
    "\n",
    "    def test_step(self, batch, batch_idx):\n",
    "        loss, true_labels, predicted_labels = self._shared_step(batch)\n",
    "        self.test_acc(predicted_labels, true_labels)\n",
    "        self.log(\"test_acc\", self.test_acc)\n",
    "\n",
    "    def configure_optimizers(self):\n",
    "        opt = torch.optim.SGD(self.parameters(), lr=self.learning_rate)\n",
    "        sch = torch.optim.lr_scheduler.StepLR(opt, step_size=30, gamma=0.5)\n",
    "\n",
    "\n",
    "        return {\n",
    "            \"optimizer\": opt,\n",
    "            \"lr_scheduler\": {\n",
    "                \"scheduler\": sch,\n",
    "                \"monitor\": \"train_loss\",\n",
    "                \"interval\": \"epoch\", # default: epoch\n",
    "                \"frequency\": 1, # default\n",
    "            },\n",
    "        }"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "9cf71ad7-04a8-4789-9db5-8051f1472f54",
   "metadata": {},
   "outputs": [],
   "source": [
    "from lightning.pytorch.callbacks import ModelCheckpoint\n",
    "\n",
    "callbacks = [\n",
    "    ModelCheckpoint(save_top_k=1, mode=\"max\", monitor=\"val_acc\", save_last=True)\n",
    "]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "e3e70623",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Global seed set to 123\n",
      "GPU available: True (mps), used: False\n",
      "TPU available: False, using: 0 TPU cores\n",
      "IPU available: False, using: 0 IPUs\n",
      "HPU available: False, using: 0 HPUs\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "48dad24f49aa4b798f0bc66796e761c1",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Finding best initial lr:   0%|          | 0/100 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "`Trainer.fit` stopped: `max_steps=100` reached.\n",
      "Learning rate set to 0.15848931924611143\n",
      "Restoring states from the checkpoint path at /Users/sebastianraschka/Desktop/cosine/.lr_find_c2d01d98-0624-489f-b69f-2d7ff5352fc9.ckpt\n"
     ]
    }
   ],
   "source": [
    "%%capture --no-display\n",
    "\n",
    "L.seed_everything(123)\n",
    "dm = CustomDataModule()\n",
    "\n",
    "pytorch_model = PyTorchMLP(num_features=100, num_classes=2)\n",
    "lightning_model = LightningModel(model=pytorch_model, learning_rate=0.1, cosine_t_max=1)\n",
    "\n",
    "trainer = L.Trainer(\n",
    "    max_epochs=num_epochs,\n",
    "    auto_lr_find=True,\n",
    "    accelerator=\"cpu\",\n",
    "    devices=\"auto\",\n",
    "    logger=CSVLogger(save_dir=\"logs/\", name=\"my-model\"),\n",
    "    deterministic=True,\n",
    "    callbacks=callbacks\n",
    ")\n",
    "\n",
    "results = trainer.tune(model=lightning_model, datamodule=dm)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "0542570a",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/var/folders/cb/1y0v6fzx5c54sztp5nqq39jc0000gn/T/ipykernel_86653/735961897.py:3: UserWarning: Matplotlib is currently using module://matplotlib_inline.backend_inline, which is a non-GUI backend, so cannot show the figure.\n",
      "  fig.show()\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAG1CAYAAAARLUsBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABNSklEQVR4nO3deXhTZd4+8DtJm6Rb0pW2dAehLGVtobQIyuCUZXRAVKo4xQVH+3NUkNeZEdFxQOftoDMOoIKiIOCC8FpRZgShOAhlUaG0gCylrF1IKd2SrkmbnN8fpdHYUrokOUlzf64r19CTc06+h+M0N895FokgCAKIiIiIXIhU7AKIiIiI7I0BiIiIiFwOAxARERG5HAYgIiIicjkMQERERORyGICIiIjI5TAAERERkcthACIiIiKX4yZ2AY7IZDLhypUr8PHxgUQiEbscIiIi6gRBEFBTU4O+fftCKu24jYcBqB1XrlxBRESE2GUQERFRNxQVFSE8PLzDfRiA2uHj4wOg5S9QpVKJXA0RERF1hk6nQ0REhPl7vCMMQO1ofeylUqkYgIiIiJxMZ7qvsBM0ERERuRwGICIiInI5DEBERETkchiAiIiIyOUwABEREZHLYQAiIiIil8MARERERC6HAYiIiIhcDgMQERERuRwGICIiInI5DEBERETkchiAiIiIyOVwMVQiald2wTWc1uhw96hwBPkoxC7HoRhNAo4WVqG4qh63D+wDPy+5Vc5bUavHt/nXcPB8BYJVCjw4Lgphvh5WOTcRWZIIgiCIXYSj0el0UKvV0Gq1XA2eXI4gCFi7/yL+tv00BAGQu0lxz+gwzLu1H27p4y12eaIxNJtw6EIFvv6xFFmnSlFeawAAKNykuGtEX6SNi8KICN8unbPe0IwfS3T44WIFvjlThryiavz8N7JMKsHUoSF49NZojI7069QK10SurCvf3wxA7WAAIldlNAl45T+nsP7gJQBAhL8HiiobzO9PHtQHU4aGYEhfFW7p4w2lu6zbn1VRq8fJKzqc0uhw8ooOVXUGhPt5IDLAE5H+LS+pRIJ6gxH1hmbUG4xoMpqgcJNC4SaDwk0KuZsUhmYTavXNqDM0o05vhK6xCRW1BlTU6lFRZ0BFrQEhaiWGhakxIkKNYWG+5hYtQRBgMJqgbzbBS+4GmdQyYBiaTdh/7hq+Ot4SenSNzeb3VEo3BKuUKCirNW8bEa7GrQMC4ecph5+nHP5ecnjKZahvMqJO34w6fTNqGptx9moNjhdrcfZqDUy/+A08JFSFiQODcLy4GgfPV5i3Dw9XY3ZCBO4a3hdqT/du/73bi7a+CSdKtJBKAYWbDEp3KZTuMvgo3ODrKYfcjT0wyPoYgHqIAYhcUYPBiGc+zUXWqasAgBemD8LvJ/TDkctVWLPvAnafvtqmdaJ/kBci/b0gkbSECUEABACechlUHu5Qe7hDpXSHRAKUahtRqm2ERteIK9UNuFajF+dC0RJemk0CGpuM5gDiLpOgr68Hwv08EO7riSajCbtPX7UIPYHeCkwZGoypcSEY1y8AblIJjhZW46PvLuOr4xoYjKYu1xKiUmJkhC9uiw3CpNg+CFErze+d1ujwwYGL+CLvCgzNLeeWu0nx68HBmDU6DBMGBDlUkCisqMfu01ex+/RV/HCxEs2/THc/461wg5+XO4K8FbhzeF/MHhMBbwV7ZVDPMAD1EAMQuQpBEFBU2YAfLlVi46FLOF6shdxNijdmj8Cdw/ta7Hv+Wi22HC7C8WItTpfqUF3f1OPPjwn0wpC+KgwJVaGPjwLFVQ0orKzH5Yo6FFU1QCoBvORu8FTI4Cl3g7tMAkNzS4uNvskEfbMRcjcpPOVu8Fa4wUshg7fCHYHecgR4yxHorYCvpzuKKhtwrLgaJ4q1OHetFl35rRfko8D0uBBMHxaKhGj/Nq1Ercpr9fgy7woKK+pQVd+EqnoDquoNqNMb4SmXwUvhBh+FG7wUboj098TwcDVGRPgiWKVs93w/V1Grx+dHS5B5tBhnSmvM2+VuUsQG+yAuTIUhfdUYFqbG0L4quMvsE4oMzSYcuVyJvfnXsCe/DGev1lq8HxXgCblMCn2zCY1NRjQ2GVFnMMLYTjDyUbrhwcQoPJwcbRECibqCAaiHGICot8suuIYtR4rxw8UKXNX91BLj6+mO9+YmYEy0f4fHC4KAUl0jTmt0KNXqIZEAEgDS631U6gzN0DY0QdfQDF1jE4wmAcEqJULVSoSoW/63X5C3KP/ir9U3Q1PdYH4so3BveZxWWWdAUWU9iqsaUFzVgMZmI24fGNRh6BHDyStafH60BF/mXUF5bdtWNC+5DGNi/JHcPwBJ/QLhJpPg7NUaFFytxdmrNSiv1WN0pB9uiw3CmGj/Tj3GFAQBFXUGXK6oR2FlHS5X1OO0RocD5ypQq/+phUwmlWBstD/uGBKMOwb3QVSAV5tzmUwCahqbUVlvQGWdAaeuaLHuwCVcLK8DALhJJRjSVwVDswkN10OT0QTER/li8uBgTIrtw075dEMMQD3EAES92YaDl/DXf580t4K4yyQYFqbGmBh//C4xChH+nuIWSJ3S2nr34xUtTl7R4scSHY4VV3epZU7pLsW4fgEYEqqCt7Klhcpb6QaZVIrL5XW4UF6H89dqcfFaHWp+FnR+LtBbjokDWx7fTRwQ1K3+SSaTgG/OlOG97Av44WLlTfcfEeGLSbFBmDgwCCPCfR0qoJK4GIB6iAGIeiNBEPDaznys/vY8AGDW6DDcGx+OURF+8JB3vzMzOQ6TScDpUh0Ona/AofMV+P5iJSQSYGCwDwYGe2NAHx/4ebnj0PkK7D17zaL172YkEiBUpURkgCei/L0QHeiF5P4BGBamhtSKAeS0RofiqgZ4uMvgIW/p8K5vNiG74Br+e6YMx4u1FvurPdwx/pYATBwQhOnDQ6FSOn4HcbIdBqAeYgCi3qbJaMKfPzuOz3NLAADPpQzEHybdwmHVvVzrr/f27rMgCMi/WoPss+UoqW5Anb4Ztddf+iYTwv090D/IG/2DvNAvyBuR/p49GvVnLWW6RuzJL8Pes9ewv6DcopO6l1yG1DGReGR8NFsyXRQDUA8xAFFvUqtvxpMfH8W+s9cgk0rw91nDcF9ChNhlEfVYs9GEY8VaZBdcw1fHNeYpCaQSYFpcKOdPckEMQD3EAES9RVFlPR7bcAT5V2vgKZfh7QdHY1JsH7HLIrI6QRCwr6Ac72dfQHZBuXl7vyAv3Bsfjlmjwjm6zAUwAPUQAxDZQ2OTEXKZtEf9JxqbjCipbkC4nwcUbpaPJw5fqsQTH+agss6APj4KvP9QAoaH+/awaiLHd6ZUh7XZF/Gf4xo0NBkBtPRhuvWWQNwxOBjjbwlA/yBvtgz1QgxAPcQARLZkNAl4becZrM2+CHeZFANDfDAo2AeDQn0QH+WHYWHqG/bZOHCuAvvPleNcWQ0KympRWFkPQWiZVO5Xg/pgalwIbhsYhO0nNHhh6wk0GQXEhanw/twx/NcvuZxafTO2n9Dgs5ziNqPL+vgokNw/ACMjfBGi9kCIWokQlRJBPgqOKnNiDEA9xADk3IwmAR8eugQBwNyk6HZ/mZXpGvHUJ7nQNTZh3q0xmDkqrNuTxwmCgCaj0KkZeavqDHjm01yLJvpfGhGuxqO3xmD6sFC4y6QwmgR8/WMpVu89hx9LdG32b10Oor2fpw8LwT/vG8lRXuTyCivq8Z8TV3DwXAUOX6qEvrn9WbulEljMYq72cMfQMBWemnQLfDjCzOExAPUQA5DzqqozYP7mPOw7ew0AcNvAIKy8f5TF3CQFV2vw8AeHUVL90xpXfdVKPD6xH1LHRHYpLOzJL8PLX55EUVU9+qo9EBXgiehAL8QEtMxwHNdXbf7sk1e0eOLDHPMQ32X3DseQUBXyS2uQX9qyJta+gnJzeAlRKXHXiFB8c7oMF65PEufhLsNvR/RFXJgKt/TxwYBgb/h7ypFXXI2dP5Zix4+lKKysBwA8M3kAFkweYNUhykS9QWOTEUcLq3DwXAXOldWiVNeyTMu1Wn27s1QDLb8jMu4ZjtsGBtm5WuoKBqAeYgByTj+WaJH+UUvAULq3tMY0NpkQHeCJ9+YmYECwD767UIHHNx6BrrEZMYFemDUqDBu/u2xelyrAS45nJg/Ag4mRcOugRaisphFL/30K/zmuuWld0QGeGByqwp78MjQ2mRDp74k1c+MxKKTtf1vltXp8/F0hPvzussUsv2oPdzycHI2HkqPh7yW/4We1Dm1uahYwLFx909qI6CdGk4CKWj20DU3mV3mtHqu+PY/LFS3/sLh/TARe+M1gzjfkoBiAeogByPl8frQYiz4/AX1zS8B4Ny0eRpOAJz7MQUl1A7zkMqQlRWPd/oswGE0YHemL9x8aA38vORqbjPgspxjv7jtvXvl8cKgKr8wYioRfLAnRYDDi89xiLNtxBrrGZkglwKPjY/DIrTEo1TbgYnnLOlbnr9XixxKduTWmVXstUu3RNxvx72Ma7Mkvw6gIXzwwNhJeXCiSSBT1hma89nU+1h+8BAAIVSvxUHI0bhsYhEEhPuxM7UAYgHqIAch5aOubsPQ/p5B5tBgAcHtsEFak/hQwKmr1+MMnR/HdhZ86QE4dGoLl949sM6lbs9GETYeL8I+d+dA2tCwnMGtUGKYNC8XRwip8f6ECJ0q0aDK2/F9mWJgaGbOGIS7sxi0t1fUGnCjR4kSJFkHeCswaHc4OlkRO6vsLFfhT5nFzaxAABKsUuG1gkHmdss70BSTbYQDqIQYg57D71FW8sPUEympaFuN8+lft93lpMprwv9tP46PvLmNuUjRemD64wxBSWWfA6zvP4NPDRe2uGh6qVuKxCf3wUFJUh4/JiKj3qTc047OcYuw5U4ZDFyrQ2PRTZ2p/LzlmjgzD7DHh7T7iJttzqgC0atUqvP7669BoNBg6dCiWL1+OCRMmtLvvww8/jA0bNrTZPmTIEJw8eRIAsH79ejzyyCNt9mloaIBS2blhwAxAjq263oAl/z6FrdeXdegX6IXX7xuO+KiOVzA3NJu69K+zY0XVWPb1GZRqGxEf5YexMf4Y1y8A4X4ebPImIjQ2GXH4UiX2nLmG/xy/grKan/rtDQ9XY3ZCBGaM7MvRY3bkNAFo8+bNSEtLw6pVqzB+/Hi8++67eP/993Hq1ClERka22V+r1aKh4aeRO83NzRgxYgSefvpp/PWvfwXQEoDmz5+P/Px8i2NDQkI6XRcDkGNqMprw6Q+FWL67ABV1BkglwO8n9MOzvx7oEGsUEZHrajaasK/gGrYcLsY3Z66aH5V7uMtw5/BQ3D82EqMjffmPJxtzmgCUmJiI0aNHY/Xq1eZtgwcPxsyZM5GRkXHT47/44gvMmjULFy9eRFRUFICWALRgwQJUV1d3uy4GIMciCAJ2ny5Dxo7TuHCtZTj4LX288fq9wzEq0k/k6oiILFXU6rE1twSfHi7CuevrkwEt/QZfu3c4Bofye8VWuvL9LdqwEoPBgJycHDz//PMW21NSUnDw4MFOnWPt2rW44447zOGnVW1tLaKiomA0GjFy5Ei88sorGDVq1A3Po9frodf/1HSp07WdbI7sr07fjL1nr2HDwUv4/vosrv5ecjx7xwDcPzay2xMXEhHZUoC3Ao9N6Id5t8bgyOUqbPqhEF8d1+BEiRYz3jqA56YMxGO39uMcXSITLQCVl5fDaDQiODjYYntwcDBKS0tverxGo8GOHTvwySefWGwfNGgQ1q9fj2HDhkGn02HFihUYP348jh07hgEDBrR7royMDCxZsqT7F0NWo61vwu7TV/H1yVLsO3vNPFurwk2KebfGIP32/px/g4icgkQiwZhof4yJ9seiaYOx6PPj2H26DP+7/Qz+e6YM/5w9EmG+HmKX6bJEewR25coVhIWF4eDBg0hKSjJv/9vf/oYPP/wQZ86c6fD4jIwM/POf/8SVK1cgl994YjiTyYTRo0dj4sSJWLlyZbv7tNcCFBERwUdgdtJkNGFv/jVkHi3GN6fLYDD+NKoi0t8TU+NC8FByNH9REJFTEwQBnx4uwtJ/n0JDkxE+Sjf8fkI/zBodhnA/T7HL6xWc4hFYYGAgZDJZm9aesrKyNq1CvyQIAtatW4e0tLQOww8ASKVSjBkzBgUFBTfcR6FQQKFQdL54sgptfRNWfFOAL/NKUFFnMG8fGOyNqXGhmDo0BINDOckYEfUOEokED4yNxLh+AXh2cx7yiqrxRtZZvJF1Fsn9A3DP6HBMGxYCTzknPbUH0f6W5XI54uPjkZWVhbvvvtu8PSsrCzNmzOjw2L179+LcuXOYN2/eTT9HEATk5eVh2LBhPa6ZrGvhljx8c6YMABDoLceMkWG4Z3Q4hvRlqxsR9V4xgV74LD0J245dwWc5xTh4vsL8+uu2k7h/bAQeHh/DVm8bEzVmLly4EGlpaUhISEBSUhLWrFmDwsJCpKenAwAWLVqEkpISbNy40eK4tWvXIjExEXFxcW3OuWTJEowbNw4DBgyATqfDypUrkZeXh7ffftsu10Sds7+gHN+cKYObVIK35ozC5MHB7NRMRC7DTSbFrNHhmDU6HMVV9dh6tASfHS3G5Yp6vJd9EesOXMK0uBA8NqEfRkb4il1uryRqAEpNTUVFRQWWLl0KjUaDuLg4bN++3TyqS6PRoLCw0OIYrVaLzMxMrFixot1zVldX4/HHH0dpaSnUajVGjRqFffv2YezYsTa/Huoco0nAq1+dAgD8blwUpsaFilwREZF4wv088fTkAfjDpFuw9+w1vL//Ag6cq8B/jmvwn+Ma/HpIMF6ZEYcQdTuT+QoCUFEB1NYC3t5AQADAbgOdIvpM0I6I8wDZ1qc/FOL5z09ApXTD3j9Ogl8Hq5sTEbmiU1d0WLv/Ir7MK0GzSYCPwg2Lpg/G/WMiWobPV1cDGzYAb74JnD//04H9+wNPPw089BDg6ytW+aJxmokQHRUDkO3U6ptx++vforxWjxd/MxiPTegndklERA4rv7QGf8o8jmNF1QCAxBh/LPe9itB5vwPqry/K+vOv8dbWH09PIDMTmDLFvgWLrCvf3+x0QXb1zrfnUV6rR3SAJ+YmRYtdDhGRQ4sN8cHn/y8ZL905BB7uMii+yUKfB+6BUN/QEnx+2YbRuq2hAfjNb4CdO8Up3AlwrB3ZTUl1A97LvgAAWDR9cJcWJiUiclUyqQTzbo3BlDAFAgfPAgQBEtzk4Y3JBEilwD33AMXFLvk47Gb4DUR2YTIJ+N/tp6FvNiExxh8pQzqe64mIiCyFb/s/KAyNkN0s/LQymVoek/1iJDW1YAAimzt4rhx3vrkfXx3XQCIBXrpzCCc3JCLqCkEA3nwT3frNuXJl20dlxEdgZDvnymqQsf2MebLD1lEMcWFqkSsjInIyFRWWo706SxBajqusbBkiT2YMQGQTmw8X4oWtP8JoEuAmleDBxEjMv2Mg/DnknYio62pre3Z8TQ0D0C8wAJHVndbo8NKXJ2E0CbhjcB8smj4Y/YO8xS6LiMh5effwd6iPj3Xq6EXYB4isqrHJiGc25cLQbMKk2CC8NzeB4YeIqKcCAlomOexq/0mJpOU4f3/b1OXEGIDIqv721WkUlNUi0FuB1+8bwc7ORETWIJG0zPDcRQIAPPOMQy2P0Ww04Z295/HdhQpR62AAIqvJOnUVH353GQDwxuwRCPRWiFwREVEv8tBDLTM8Szv31W2USNDgrsBXI++Aoyz6cPKKFjNXHcDfd5zB85nH0dhkFK0WBiCyiqu6Rvzps2MAgN9PiMHEgUEiV0RE1Mv4+rYsbyGR3DQECRIpAAmemPkC/rD9Iu595xDOldXYpcz2NDYZsezrM/jtWwfwY4kOag93PPWrAVCIOCEuAxD1WGOTEQs+zUNVfROG9lXhuSmxYpdERNQ7TZkCfPUV4OHREoR++Wjr+jaJpweM//kPxqU/AE+5DDmXqzD73e9QcNX+IejQ+QpMW5GN1d+eh9Ek4DfDQpG1cCLujQ8XtZsEF0NtBxdD7byS6gY88eER/Fiig4e7DP9++lbc0oednomIbKq6umWG55Ur264G/8wzLY/L1C1zrpVqG/H4h0dwvFiLIB8FNj8+Dv1+MThFo23Ah4cuY0hfFaYMDYG7rOftI2W6Rvzv9tP4Iu8KACBYpcArM+KQMjSkx+e+Ea4G30MMQJ3z/YUKPPnxUVTUGeDn6Y5VD8YjqT/nmSAishtBaJnksKamZai7v3+7HZ6r6w24f813OFNagxCVElueSEJkgCeajCZ8cOAilu8uQL2hpT9OiEqJBxMj8UBiZLf6cjYbTdhw6DL+lXUWtfpmSCTAnLGR+NPUQVB7uPf4kjvCANRDDEAdEwQBH313GUv+fQrNJgFDQlV4Ny0eEf6eYpdGREQ3UFGrx/1rvkNBWS3CfD3wwvTBWPHNWZy92jLJ4rAwNTTaRpTX6gEAcpkUU+NCcNvAIIy/JRAhaqX5XDWNTfjuQiWyC67hXFktmk0CBEGA0SSgrEaP4qoGAMCIcDVemRmH4eG+drlGBqAeYgDq2Opvz2PZ12cAAHeN6IvX7hkOD7lM5KqIiOhmynSNSF3zHS6W15m3+XvJ8fy0Qbh3dDiaTCbsOFGKDw5ewrGiaotj+wV6ISHaD5fK63G0sArNphvHB19Pd/x56iCkJkRAKrVfPx8GoB5iALqxosp63PHGXuibTXguZSD+MOkWzvVDRORENNoGpL77HYqq6vHA2Ej8aUosfD3bLlOUV1SNnSdLcfBcOU6UaPHLvBMT6IUJAwIxMsIXcjcpZBIJpFIJ3GUSxEf6Q+1p28dd7enK9zeXwqAueeU/p6BvNiG5fwDDDxGREwpVe+DrBRNQXd+Evr4eN9xvZIQvRkb4AgC0DU34/kIFcouqEe7ngYkDgpy+2wMDEHXa3rPXsOvUVbhJJVjy26EMP0RETspT7gZPeecjgNrDHSlDQ2w6gsveOA8QdYqh2YQl204CAB5OjsaAYC6sR0REzosBiDpl3YGLuFBeh0BvBebfMUDscoiIiHqEAYhuqlTbiJXfFAAAFk0bBB+l/Tu2ERERWRP7AJGF7y5U4P3sC1C4y6BSukPl4Ya8wmrUG4yIj/LD3aPCxC6RiIioxxiAyOzCtVr8fuMR1DQ2t3lPIgGW/HaoXedzICIishUGIALQMqtna/gZHemL347oC11jM3QNTdA1NmFcvwDEhanFLpOIiMgqGIAIJpOAZzfn4fy1OoSolHg3LQFBPl1f/4WIiMhZsBM04V+7z2L36TLI3aRYMzee4YeIiHo9BiAXt+OEBm/+9xwA4O+zhtltwToiIiIxMQC5sGs1evzP/x0DAMy7NQazRoeLXBEREZF9MAC5sC9yS1BvMGJoXxUWTRskdjlERER2I3oAWrVqFWJiYqBUKhEfH4/s7Owb7vvwww9DIpG0eQ0dOtRiv8zMTAwZMgQKhQJDhgzB1q1bbX0ZTkcQBPxfThEAYE5iJNxkov+nQEREZDeifutt3rwZCxYswOLFi5Gbm4sJEyZg2rRpKCwsbHf/FStWQKPRmF9FRUXw9/fHfffdZ97n0KFDSE1NRVpaGo4dO4a0tDTMnj0b33//vb0uyykcL9bi7NVaKNykuGtEX7HLISIisiuJIAiCWB+emJiI0aNHY/Xq1eZtgwcPxsyZM5GRkXHT47/44gvMmjULFy9eRFRUFAAgNTUVOp0OO3bsMO83depU+Pn5YdOmTZ2qS6fTQa1WQ6vVQqVSdfGqnMOLX5zAR98VYsbIvlhx/yixyyEiIuqxrnx/i9YCZDAYkJOTg5SUFIvtKSkpOHjwYKfOsXbtWtxxxx3m8AO0tAD98pxTpkzp8Jx6vR46nc7i1Zs1NhmxLe8KAOC++AiRqyEiIrI/0QJQeXk5jEYjgoODLbYHBwejtLT0psdrNBrs2LEDjz32mMX20tLSLp8zIyMDarXa/IqI6N2hYNepq9A1NqOvWomk/gFil0NERGR3ovd8lUgs15YSBKHNtvasX78evr6+mDlzZo/PuWjRImi1WvOrqKioc8U7qc9yigEA98SHQ8a1vYiIyAWJthRGYGAgZDJZm5aZsrKyNi04vyQIAtatW4e0tDTI5XKL90JCQrp8ToVCAYXCNWY/1mgbkF1wDQBwbzzn/SEiItckWguQXC5HfHw8srKyLLZnZWUhOTm5w2P37t2Lc+fOYd68eW3eS0pKanPOXbt23fScruLzoyUQBGBsjD+iArzELoeIiEgUoi6GunDhQqSlpSEhIQFJSUlYs2YNCgsLkZ6eDqDl0VRJSQk2btxocdzatWuRmJiIuLi4NuecP38+Jk6ciGXLlmHGjBn48ssvsXv3buzfv98u1+TIBEHA/x1pebx3H1t/iIjIhYkagFJTU1FRUYGlS5dCo9EgLi4O27dvN4/q0mg0beYE0mq1yMzMxIoVK9o9Z3JyMj799FO8+OKLeOmll9C/f39s3rwZiYmJNr8eR3fkchUuVdTDUy7D9GGhYpdDREQkGlHnAXJUvXUeoP/ZcgyZR4txX3w4Xr9vhNjlEBERWZVTzANE9lWqbcS2YyUAWpa+ICIicmUMQC7igwMX0WQUMDbGH6Mi/cQuh4iISFQMQC5A29CEj79v6UuVfls/kashIiISHwOQC/jk+0LU6psRG+yDSbF9xC6HiIhIdAxAvZy+2Yh1By4CAB6f2K9Ts2wTERH1dgxAvdwXuSW4VqNHqFqJu0b0FbscIiIih8AA1IuZTALe3XcBADDv1hjI3Xi7iYiIAAagXm336au4cK0OKqUb7h/Loe9EREStGIB6sdbWn7SkKHgrRJ30m4iIyKEwAPVS58pqkHO5CnKZFA8lR4tdDhERkUNhAOqljhdrAQAjI3zRx0cpcjVERESOhQGolzp5RQcAGNK396xlRkREZC0MQL3UjyUtLUBDGYCIiIjaYADqhQRBwClNSwtQXJha5GqIiIgcDwNQL1RU2YCaxmbI3aS4pY+32OUQERE5HAagXujHKy2Pv2KDfeAu4y0mIiL6JX479kInrweguDD2/yEiImoPA1Av9NMIMPb/ISIiag8DUC/0Y0lLAOIIMCIiovYxAPUyZbpGlNfqIZUAg0MYgIiIiNrDANTLtD7+6h/kDQ+5TORqiIiIHBMDUC/DCRCJiIhujgGol2ltAeIEiERERDfGANTLnNS0tABxDTAiIqIbYwDqRbT1TSiqbAAADA1lCxAREdGNMAD1Iq2tPxH+HlB7uotcDRERkeNiAOpFTl3v/8PWHyIioo4xAPUirSPAuAQGERFRxxiAepHWEWBDuQQGERFRhxiAeokGgxHnr9UC4BxAREREN8MA1EucLtXBJABBPgr0USnFLoeIiMihiR6AVq1ahZiYGCiVSsTHxyM7O7vD/fV6PRYvXoyoqCgoFAr0798f69atM7+/fv16SCSSNq/GxkZbX4qofnr8xdYfIiKim3ET88M3b96MBQsWYNWqVRg/fjzeffddTJs2DadOnUJkZGS7x8yePRtXr17F2rVrccstt6CsrAzNzc0W+6hUKuTn51tsUyp7d6vISS6BQURE1GmiBqA33ngD8+bNw2OPPQYAWL58OXbu3InVq1cjIyOjzf5ff/019u7diwsXLsDf3x8AEB0d3WY/iUSCkJAQm9buaI4WVgEAhof7ilsIERGRExDtEZjBYEBOTg5SUlIstqekpODgwYPtHrNt2zYkJCTgtddeQ1hYGAYOHIjnnnsODQ0NFvvV1tYiKioK4eHhuPPOO5Gbm9thLXq9HjqdzuLlTKrrDTh7taUDdEKUn8jVEBEROT7RWoDKy8thNBoRHBxssT04OBilpaXtHnPhwgXs378fSqUSW7duRXl5OZ588klUVlaa+wENGjQI69evx7Bhw6DT6bBixQqMHz8ex44dw4ABA9o9b0ZGBpYsWWLdC7SjnMstrT/9grwQ4K0QuRoiIiLHJ3onaIlEYvGzIAhttrUymUyQSCT4+OOPMXbsWEyfPh1vvPEG1q9fb24FGjduHH73u99hxIgRmDBhArZs2YKBAwfizTffvGENixYtglarNb+Kioqsd4F2cPhSSwAaE+UvciVERETOQbQWoMDAQMhksjatPWVlZW1ahVqFhoYiLCwMavVPE/0NHjwYgiCguLi43RYeqVSKMWPGoKCg4Ia1KBQKKBTO23Jy5FIlACAhmo+/iIiIOkO0FiC5XI74+HhkZWVZbM/KykJycnK7x4wfPx5XrlxBbW2tedvZs2chlUoRHh7e7jGCICAvLw+hoaHWK96BNDYZcby4ZQTYmGi2ABEREXWGqI/AFi5ciPfffx/r1q3D6dOn8eyzz6KwsBDp6ekAWh5NzZ0717z/nDlzEBAQgEceeQSnTp3Cvn378Mc//hGPPvooPDw8AABLlizBzp07ceHCBeTl5WHevHnIy8szn7O3OVGihcFoQpCPAlEBnmKXQ0RE5BREHQafmpqKiooKLF26FBqNBnFxcdi+fTuioqIAABqNBoWFheb9vb29kZWVhaeffhoJCQkICAjA7Nmz8eqrr5r3qa6uxuOPP47S0lKo1WqMGjUK+/btw9ixY+1+ffZw+PrjrzHRfjfsO0VERESWJIIgCGIX4Wh0Oh3UajW0Wi1UKseeWPCRD37Anvxr+MudQ/DorTFil0NERCSarnx/iz4KjLrPZBJw5PoQePb/ISIi6jwGICd2tqwGNY3N8JTLMDjUR+xyiIiInAYDkBNrnf9ndKQf3GS8lURERJ3Fb00nxvl/iIiIuocByIkducT+P0RERN3BAOSkSqobUFLdAJlUgpERvmKXQ0RE5FQYgJxU6+OvoX1V8FKIOp0TERGR02EAclKtEyAmcAFUIiKiLmMAclI/9f9hB2giIqKuYgByQtqGJuRfrQEAxDMAERERdRkDkBPKL62BIABhvh7o46MUuxwiIiKnwwDkhC5X1AEAYgK9RK6EiIjIOTEAOaHCynoAQGSAp8iVEBEROScGICd0qaIlAEX5MwARERF1BwOQEyq8/ggsii1ARERE3cIA5IQutz4C82cfICIiou5gAHIy2oYmVNc3AWALEBERUXcxADmZwuv9fwK9FVwCg4iIqJsYgJzMJfb/ISIi6jEGICfTOgSeI8CIiIi6jwHIybROgsg5gIiIiLqPAcjJXL7eByg6gCPAiIiIuosByMlwFmgiIqKeYwByIo1NRmi0jQDYB4iIiKgnGICcSNH11h9vhRv8veQiV0NEROS8GICcSGv/n0h/T0gkEpGrISIicl4MQE6kdQkMzgFERETUMwxATuSnRVA5AoyIiKgnGICcCFuAiIiIrIMByIm0rgPGEWBEREQ9wwDkJIwmAUVVnAOIiIjIGkQPQKtWrUJMTAyUSiXi4+ORnZ3d4f56vR6LFy9GVFQUFAoF+vfvj3Xr1lnsk5mZiSFDhkChUGDIkCHYunWrLS/BLq5UN6DJKMBdJkGo2kPscoiIiJyaqAFo8+bNWLBgARYvXozc3FxMmDAB06ZNQ2Fh4Q2PmT17Nr755husXbsW+fn52LRpEwYNGmR+/9ChQ0hNTUVaWhqOHTuGtLQ0zJ49G99//709LslmWmeAjvDzhEzKIfBEREQ9IREEQRDrwxMTEzF69GisXr3avG3w4MGYOXMmMjIy2uz/9ddf4/7778eFCxfg7+/f7jlTU1Oh0+mwY8cO87apU6fCz88PmzZt6lRdOp0OarUaWq0WKpWqi1dlG598X4gXtp7ApNggfPDIWLHLISIicjhd+f4WrQXIYDAgJycHKSkpFttTUlJw8ODBdo/Ztm0bEhIS8NprryEsLAwDBw7Ec889h4aGBvM+hw4danPOKVOm3PCcQMtjNZ1OZ/FyNJcrOQSeiIjIWtzE+uDy8nIYjUYEBwdbbA8ODkZpaWm7x1y4cAH79++HUqnE1q1bUV5ejieffBKVlZXmfkClpaVdOicAZGRkYMmSJT28Itsq/Nks0ERERNQzoneC/uWSDoIg3HCZB5PJBIlEgo8//hhjx47F9OnT8cYbb2D9+vUWrUBdOScALFq0CFqt1vwqKirqwRXZxqUKzgFERERkLaK1AAUGBkImk7VpmSkrK2vTgtMqNDQUYWFhUKvV5m2DBw+GIAgoLi7GgAEDEBIS0qVzAoBCoYBCoejB1diWIAg/mwWaAYiIiKinRGsBksvliI+PR1ZWlsX2rKwsJCcnt3vM+PHjceXKFdTW1pq3nT17FlKpFOHh4QCApKSkNufctWvXDc/pDCrqDKgzGCGRAOF+DEBEREQ9JeojsIULF+L999/HunXrcPr0aTz77LMoLCxEeno6gJZHU3PnzjXvP2fOHAQEBOCRRx7BqVOnsG/fPvzxj3/Eo48+Cg+Plrlx5s+fj127dmHZsmU4c+YMli1bht27d2PBggViXKJVtK4CH6pSQukuE7kaIiIi5yfaIzCgZch6RUUFli5dCo1Gg7i4OGzfvh1RUVEAAI1GYzEnkLe3N7KysvD0008jISEBAQEBmD17Nl599VXzPsnJyfj000/x4osv4qWXXkL//v2xefNmJCYm2v36rKXw+ggwzgBNRERkHaLOA+SoHG0eoOW7z2L57gKkJkRg2b3DxS6HiIjIITnFPEDUea2PwNgCREREZB0MQE7gWo0eABCqVopcCRERUe/QrQBUVFSE4uJi888//PADFixYgDVr1litMPqJtqEJAODr6S5yJURERL1DtwLQnDlzsGfPHgAtMy//+te/xg8//IAXXngBS5cutWqB9FMAUnswABEREVlDtwLQjz/+iLFjWxbk3LJlC+Li4nDw4EF88sknWL9+vTXrIwDV9QYADEBERETW0q0A1NTUZJ45effu3fjtb38LABg0aBA0Go31qiOYTAJq9M0AABUDEBERkVV0KwANHToU77zzDrKzs5GVlYWpU6cCAK5cuYKAgACrFujqahqb0TpRAVuAiIiIrKNbAWjZsmV49913cfvtt+OBBx7AiBEjAADbtm0zPxoj62jt/+PhLoPCjbNAExERWUO3ZoK+/fbbUV5eDp1OBz8/P/P2xx9/HJ6enKvGmtgBmoiIyPq61QLU0NAAvV5vDj+XL1/G8uXLkZ+fjz59+li1QFfHAERERGR93QpAM2bMwMaNGwEA1dXVSExMxD//+U/MnDkTq1evtmqBrq66gSPAiIiIrK1bAejo0aOYMGECAOCzzz5DcHAwLl++jI0bN2LlypVWLdDVtbYAcQQYERGR9XQrANXX18PHxwcAsGvXLsyaNQtSqRTjxo3D5cuXrVqgq+MjMCIiIuvrVgC65ZZb8MUXX6CoqAg7d+5ESkoKAKCsrMwhVk/vTRiAiIiIrK9bAegvf/kLnnvuOURHR2Ps2LFISkoC0NIaNGrUKKsW6Op0XAeMiIjI6ro1DP7ee+/FrbfeCo1GY54DCAAmT56Mu+++22rFEVuAiIiIbKFbAQgAQkJCEBISguLiYkgkEoSFhXESRBtgACIiIrK+bj0CM5lMWLp0KdRqNaKiohAZGQlfX1+88sorMJlM1q7RpVXXMwARERFZW7dagBYvXoy1a9fi73//O8aPHw9BEHDgwAH89a9/RWNjI/72t79Zu06XxWHwRERE1tetALRhwwa8//775lXgAWDEiBEICwvDk08+yQBkRXwERkREZH3degRWWVmJQYMGtdk+aNAgVFZW9rgoamE0CahpbAbAUWBERETW1K0ANGLECLz11ltttr/11lsYPnx4j4uiFjWNTeY/swWIiIjIerr1COy1117Db37zG+zevRtJSUmQSCQ4ePAgioqKsH37dmvX6LJaH395ymVwl3UrqxIREVE7uvWtetttt+Hs2bO4++67UV1djcrKSsyaNQsnT57EBx98YO0aXRZHgBEREdlGt+cB6tu3b5vOzseOHcOGDRuwbt26HhdG7ABNRERkK3yu4sA4BJ6IiMg2GIAcGFuAiIiIbIMByIG1BiBfBiAiIiKr6lIfoFmzZnX4fnV1dU9qoV/QsQWIiIjIJroUgNRq9U3fnzt3bo8Kop/wERgREZFtdCkAcYi7fZmHwXMWaCIiIqsSvQ/QqlWrEBMTA6VSifj4eGRnZ99w32+//RYSiaTN68yZM+Z91q9f3+4+jY2N9rgcq2ILEBERkW10ex4ga9i8eTMWLFiAVatWYfz48Xj33Xcxbdo0nDp1CpGRkTc8Lj8/HyqVyvxzUFCQxfsqlQr5+fkW25RKpXWLtwMOgyciIrINUQPQG2+8gXnz5uGxxx4DACxfvhw7d+7E6tWrkZGRccPj+vTpA19f3xu+L5FIEBISYu1y7Y6jwIiIiGxDtEdgBoMBOTk5SElJsdiekpKCgwcPdnjsqFGjEBoaismTJ2PPnj1t3q+trUVUVBTCw8Nx5513Ijc3t8Pz6fV66HQ6i5cj4CgwIiIi2xAtAJWXl8NoNCI4ONhie3BwMEpLS9s9JjQ0FGvWrEFmZiY+//xzxMbGYvLkydi3b595n0GDBmH9+vXYtm0bNm3aBKVSifHjx6OgoOCGtWRkZECtVptfERER1rnIHmg2mlCjbwbAAERERGRtoj4CA1oeV/2cIAhttrWKjY1FbGys+eekpCQUFRXhH//4ByZOnAgAGDduHMaNG2feZ/z48Rg9ejTefPNNrFy5st3zLlq0CAsXLjT/rNPpRA9BusZm85/ZB4iIiMi6RGsBCgwMhEwma9PaU1ZW1qZVqCPjxo3rsHVHKpVizJgxHe6jUCigUqksXmJr7f/jJZfBXSb6YD0iIqJeRbRvVrlcjvj4eGRlZVlsz8rKQnJycqfPk5ubi9DQ0Bu+LwgC8vLyOtzHEXEIPBERke2I+ghs4cKFSEtLQ0JCApKSkrBmzRoUFhYiPT0dQMujqZKSEmzcuBFAyyix6OhoDB06FAaDAR999BEyMzORmZlpPueSJUswbtw4DBgwADqdDitXrkReXh7efvttUa6xu8wByFMuciVERES9j6gBKDU1FRUVFVi6dCk0Gg3i4uKwfft2REVFAQA0Gg0KCwvN+xsMBjz33HMoKSmBh4cHhg4diq+++grTp08371NdXY3HH38cpaWlUKvVGDVqFPbt24exY8fa/fp64qcWING7aREREfU6EkEQBLGLcDQ6nQ5qtRparVa0/kAffncZL33xI6YMDca7aQmi1EBERORMuvL9zd61DopzABEREdkOA5CDqq43AGAAIiIisgUGIAfFUWBERES2wwDkoBiAiIiIbIcByEFxGDwREZHtMAA5KG0D1wEjIiKyFQYgB8VRYERERLbDAOSgOAqMiIjIdhiAHFCT0YQ6gxEAAxAREZEtMAA5oNbHXwCgUnIpDCIiImtjAHJArSPAfBRucJPxFhEREVkbv10dUGsAUvHxFxERkU0wADkgToJIRERkWwxADogBiIiIyLYYgBwQAxAREZFtMQA5IG09AxAREZEtMQA5oJ/WAWMAIiIisgUGIAfER2BERES2xQDkgBiAiIiIbIsByAExABEREdkWA5ADYgAiIiKyLQYgB8QAREREZFsMQA6IAYiIiMi2GIAcTJPRhHqDEQDgy2HwRERENsEA5GBaW38AwEfJAERERGQLDEAOpjUA+SjdIJNKRK6GiIiod2IAcjDVXAaDiIjI5hiAHExlnQEAEOAlF7kSIiKi3osByMFUXQ9AfgxARERENsMA5GAq61sCkD8DEBERkc0wADmY1kdg/p4MQERERLbCAORgzAHImwGIiIjIVkQPQKtWrUJMTAyUSiXi4+ORnZ19w32//fZbSCSSNq8zZ85Y7JeZmYkhQ4ZAoVBgyJAh2Lp1q60vw2rYAkRERGR7ogagzZs3Y8GCBVi8eDFyc3MxYcIETJs2DYWFhR0el5+fD41GY34NGDDA/N6hQ4eQmpqKtLQ0HDt2DGlpaZg9eza+//57W1+OVZgDEPsAERER2YxEEARBrA9PTEzE6NGjsXr1avO2wYMHY+bMmcjIyGiz/7fffotJkyahqqoKvr6+7Z4zNTUVOp0OO3bsMG+bOnUq/Pz8sGnTpk7VpdPpoFarodVqoVKpunZRPTTxtT0orKzHZ+lJSIj2t+tnExERObOufH+L1gJkMBiQk5ODlJQUi+0pKSk4ePBgh8eOGjUKoaGhmDx5Mvbs2WPx3qFDh9qcc8qUKR2eU6/XQ6fTWbzEwmHwREREtidaACovL4fRaERwcLDF9uDgYJSWlrZ7TGhoKNasWYPMzEx8/vnniI2NxeTJk7Fv3z7zPqWlpV06JwBkZGRArVabXxERET24su4zNJtQo28GwIkQiYiIbMlN7AIkEsv1rgRBaLOtVWxsLGJjY80/JyUloaioCP/4xz8wceLEbp0TABYtWoSFCxeaf9bpdKKEoKrrcwDJpBKouBAqERGRzYjWAhQYGAiZTNamZaasrKxNC05Hxo0bh4KCAvPPISEhXT6nQqGASqWyeImhtQO0n6c7pFwIlYiIyGZEC0ByuRzx8fHIysqy2J6VlYXk5OROnyc3NxehoaHmn5OSktqcc9euXV06p1h+CkB8/EVERGRLoj4CW7hwIdLS0pCQkICkpCSsWbMGhYWFSE9PB9DyaKqkpAQbN24EACxfvhzR0dEYOnQoDAYDPvroI2RmZiIzM9N8zvnz52PixIlYtmwZZsyYgS+//BK7d+/G/v37RbnGruAQeCIiIvsQNQClpqaioqICS5cuhUajQVxcHLZv346oqCgAgEajsZgTyGAw4LnnnkNJSQk8PDwwdOhQfPXVV5g+fbp5n+TkZHz66ad48cUX8dJLL6F///7YvHkzEhMT7X59XVXFdcCIiIjsQtR5gByVWPMA/SvrLFZ8U4A5iZH437uH2e1ziYiIegOnmAeI2mptAeIQeCIiIttiAHIgFewETUREZBcMQA6kdRboAK4ET0REZFMMQA6Ew+CJiIjsgwHIgXAYPBERkX0wADkIQRA4DJ6IiMhOGIAcRI2+GU3GlhkJGICIiIhsiwHIQbR2gPaUy6B0l4lcDRERUe/GAOQgOASeiIjIfhiAHASHwBMREdkPA5CDYAsQERGR/TAAOQhzCxA7QBMREdkcA5CDqLw+BN6PAYiIiMjmGIAcRGUt5wAiIiKyFwYgB8FJEImIiOyHAchBsBM0ERGR/TAAOQgOgyciIrIfBiAHwZXgiYiI7IcByAE0GU3QNTYD4DB4IiIie2AAcgCtHaClEkDl4S5yNURERL0fA5ADaH385esph0wqEbkaIiKi3o8ByAG0BiAOgSciIrIPBiAHYA5A7ABNRERkFwxADqCKLUBERER2xQDkACrrmgBwHTAiIiJ7YQByAJV1egAcAk9ERGQvDEAOoLKeLUBERET2xADkAFpbgPy9OAcQERGRPTAAOYDWPkD+XgqRKyEiInINDEAOwNwCxGHwREREdsEAJDJBEFDV2gLEleCJiIjsQvQAtGrVKsTExECpVCI+Ph7Z2dmdOu7AgQNwc3PDyJEjLbavX78eEomkzauxsdEG1fdcncEIg9EEgC1ARERE9iJqANq8eTMWLFiAxYsXIzc3FxMmTMC0adNQWFjY4XFarRZz587F5MmT231fpVJBo9FYvJRKpS0uoccqa1smQfRwl8FDLhO5GiIiItcgagB64403MG/ePDz22GMYPHgwli9fjoiICKxevbrD45544gnMmTMHSUlJ7b4vkUgQEhJi8XJUlfWcBZqIiMjeRAtABoMBOTk5SElJsdiekpKCgwcP3vC4Dz74AOfPn8fLL798w31qa2sRFRWF8PBw3HnnncjNze2wFr1eD51OZ/Gyl9YO0H4cAk9ERGQ3ogWg8vJyGI1GBAcHW2wPDg5GaWlpu8cUFBTg+eefx8cffww3N7d29xk0aBDWr1+Pbdu2YdOmTVAqlRg/fjwKCgpuWEtGRgbUarX5FRER0f0L6yIOgSciIrI/0TtBSyQSi58FQWizDQCMRiPmzJmDJUuWYODAgTc837hx4/C73/0OI0aMwIQJE7BlyxYMHDgQb7755g2PWbRoEbRarflVVFTU/Qvqop+GwLMFiIiIyF7ab0axg8DAQMhksjatPWVlZW1ahQCgpqYGR44cQW5uLp566ikAgMlkgiAIcHNzw65du/CrX/2qzXFSqRRjxozpsAVIoVBAoRCnBYYtQERERPYnWguQXC5HfHw8srKyLLZnZWUhOTm5zf4qlQonTpxAXl6e+ZWeno7Y2Fjk5eUhMTGx3c8RBAF5eXkIDQ21yXX0VFVdaydotgARERHZi2gtQACwcOFCpKWlISEhAUlJSVizZg0KCwuRnp4OoOXRVElJCTZu3AipVIq4uDiL4/v06QOlUmmxfcmSJRg3bhwGDBgAnU6HlStXIi8vD2+//bZdr62zKswBiC1ARERE9iJqAEpNTUVFRQWWLl0KjUaDuLg4bN++HVFRUQAAjUZz0zmBfqm6uhqPP/44SktLoVarMWrUKOzbtw9jx461xSX0WFU9W4CIiIjsTSIIgiB2EY5Gp9NBrVZDq9VCpVLZ9LMm/eNbXCyvw+bHxyGxX4BNP4uIiKg368r3t+ijwFxd5fVHYAFcB4yIiMhuGIBE1Gw0QdvQMgrMj+uAERER2Q0DkIiq6lvCj0QC+DIAERER2Q0DkIhaO0D7erhDJm07+SMRERHZBgOQiCpquRAqERGRGBiARFTFleCJiIhEwQAkotZJENkBmoiIyL4YgERUxSHwREREomAAElElW4CIiIhEwQAkoso69gEiIiISAwOQiNgJmoiISBwMQCLiMHgiIiJxMACJiC1ARERE4mAAEokgCBwGT0REJBIGIJHUG4wwNJsAcBg8ERGRvTEAiaR1BJjCTQoPd5nI1RAREbkWBiCRtAagAC85JBIuhEpERGRPDEAiqbzeAdqPHaCJiIjsjgFIJJUcAk9ERCQaBiCRcAg8ERGReBiARMJ1wIiIiMTDACSSn3eCJiIiIvtiABKJuQWIAYiIiMjuGIBEwhYgIiIi8TAAiYTD4ImIiMTDACQStgARERGJhwFIBM1GE7QNTQDYAkRERCQGBiARaBuaIAgtf/b1cBe3GCIiIhfEACSC1sdfvp7ucJPxFhAREdkbv31F0BqA/DkJIhERkSgYgERgDkDs/0NERCQK0QPQqlWrEBMTA6VSifj4eGRnZ3fquAMHDsDNzQ0jR45s815mZiaGDBkChUKBIUOGYOvWrVauumc4BJ6IiEhcogagzZs3Y8GCBVi8eDFyc3MxYcIETJs2DYWFhR0ep9VqMXfuXEyePLnNe4cOHUJqairS0tJw7NgxpKWlYfbs2fj+++9tdRld1roSPIfAExERiUMiCK3jkewvMTERo0ePxurVq83bBg8ejJkzZyIjI+OGx91///0YMGAAZDIZvvjiC+Tl5ZnfS01NhU6nw44dO8zbpk6dCj8/P2zatKlTdel0OqjVami1WqhUqq5f2E0s+fdJfHDgEv7f7f3x56mDrH5+IiIiV9SV72/RWoAMBgNycnKQkpJisT0lJQUHDx684XEffPABzp8/j5dffrnd9w8dOtTmnFOmTOnwnHq9HjqdzuJlS1XsBE1ERCQq0QJQeXk5jEYjgoODLbYHBwejtLS03WMKCgrw/PPP4+OPP4abm1u7+5SWlnbpnACQkZEBtVptfkVERHTxarqmgp2giYiIRCV6J2iJRGLxsyAIbbYBgNFoxJw5c7BkyRIMHDjQKudstWjRImi1WvOrqKioC1fQdVX1DEBERERiar8ZxQ4CAwMhk8natMyUlZW1acEBgJqaGhw5cgS5ubl46qmnAAAmkwmCIMDNzQ27du3Cr371K4SEhHT6nK0UCgUUCoUVrqpzWjtBMwARERGJQ7QWILlcjvj4eGRlZVlsz8rKQnJycpv9VSoVTpw4gby8PPMrPT0dsbGxyMvLQ2JiIgAgKSmpzTl37drV7jnFUskWICIiIlGJ1gIEAAsXLkRaWhoSEhKQlJSENWvWoLCwEOnp6QBaHk2VlJRg48aNkEqliIuLszi+T58+UCqVFtvnz5+PiRMnYtmyZZgxYwa+/PJL7N69G/v377frtd1IvaEZjU0mAAxAREREYhE1AKWmpqKiogJLly6FRqNBXFwctm/fjqioKACARqO56ZxAv5ScnIxPP/0UL774Il566SX0798fmzdvNrcQia11Fmi5mxSecpnI1RAREbkmUecBclS2nAfoRLEWd721HyEqJb57oe1EjkRERNQ9TjEPkKuqqNMD4OMvIiIiMTEA2RmHwBMREYmPAcjOKjgEnoiISHQMQHbGFiAiIiLxMQDZWWVdEwAGICIiIjExANlZ5fVO0H4MQERERKJhALKzqtYWIK4ET0REJBoGIDvjMHgiIiLxMQDZWVU9+wARERGJjQHIjowmgaPAiIiIHAADkB1pG5rQuvCIr6e7uMUQERG5MAYgO2pdCFXt4Q53Gf/qiYiIxMJvYTtqDUB8/EVERCQuN7ELcCX9grzw5gOjIJVIxC6FiIjIpTEA2VGgtwJ3jegrdhlEREQuj4/AiIiIyOUwABEREZHLYQAiIiIil8MARERERC6HAYiIiIhcDgMQERERuRwGICIiInI5DEBERETkchiAiIiIyOUwABEREZHLYQAiIiIil8MARERERC6HAYiIiIhcDleDb4cgCAAAnU4nciVERETUWa3f263f4x1hAGpHTU0NACAiIkLkSoiIiKirampqoFarO9xHInQmJrkYk8mEK1euwMfHBxKJROxynIpOp0NERASKioqgUqnELoe6gffQ+fEeOjfev+4TBAE1NTXo27cvpNKOe/mwBagdUqkU4eHhYpfh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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = results[\"lr_find\"].plot(suggest=True)\n",
    "# fig.savefig(\"lr_suggest.pdf\")\n",
    "fig.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "e9293189",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.15848931924611143\n"
     ]
    }
   ],
   "source": [
    "# get suggestion\n",
    "new_lr = results[\"lr_find\"].suggestion()\n",
    "print(new_lr)\n",
    "\n",
    "# update hparams of the model\n",
    "lightning_model.hparams.learning_rate = new_lr"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "eb1581b4",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n",
      "  | Name      | Type       | Params\n",
      "-----------------------------------------\n",
      "0 | model     | PyTorchMLP | 15.6 K\n",
      "1 | train_acc | Accuracy   | 0     \n",
      "2 | val_acc   | Accuracy   | 0     \n",
      "3 | test_acc  | Accuracy   | 0     \n",
      "-----------------------------------------\n",
      "15.6 K    Trainable params\n",
      "0         Non-trainable params\n",
      "15.6 K    Total params\n",
      "0.062     Total estimated model params size (MB)\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Sanity Checking: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "dfd4553226ee4c40b72dd400529e2738",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Training: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "07b482b4a0754f169c97add29188d90b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "edd0ce76b3234cfaa04ec72292d9d76d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2261bc78191243baaa3487e1c572b959",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "92a19490a8d64374b1eec7ca88525a15",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2252ce9f68fa40b1bc7e48ca5b42b011",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c673bbf26d324d848538d61caf19b1f1",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f2d5d965c07241b58396cc508639e6be",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "88c197a1150d4acda9036c3ff6568a1f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "32ed467333594225bd88722206cb6cd9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "34e1dc3f666649908b0242e1cb0700c3",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ef534c18cec5404ca2a2b893c8818696",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "41a2a71181a44d928c671d8283ac8038",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b8566dcb5b834ba08b4b401210670aa5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b8f8d2ab556f46ec8f86019f66cfea21",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e141f76b4b284209a31cf2bd453bb11e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8360b61f254f477b9b34c260507e0e48",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "071125b77b2746928b6bd7c08aa94f2a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f4fd1775e4304d46b0faa44d5c4a38c7",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e8d9bb2f86514e179b74f7879788295b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f535eb8f78ba4a33b7140ec2c2235d91",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2529f25ed84f4a0692a5599bef89dbd5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e9f085a092f547fca0bf294795243778",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8ff363c34a094b658ff481a783dec55f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1634bdcfd3db4982b7d7b802c3b3d2f5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fb95843aa6af48edbeb6469aa4bd8fb7",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "103c0cd32a944e3c89f98422584284e5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "08240e02c76a4875975f27a52e7abca1",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "6124f5edfc954dd68dc27402598f98a6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1bc86a1f05b74db7adc95834076788e6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5fe74b60f4024fdab4872ba66393012d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "81faf71df4514a438b314f23bd98e931",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "11827fbe5404462a85f3a19562a50324",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "05679b6f15424ddfa3329c3bef0ec471",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0d9022722fb44e6589ef7ac60951409a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a1386bbcdad549ccbed97089f6dbdb95",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c7d18826271645c881e9d9d9f6419f21",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ed8b4372bb9245deb18cfbb048abacf4",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0399cdb810934173896e6f1eb4c37f99",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e128c6f100ad4422a4880d783db66243",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a227cd8e35e24c4bbb59c3dd87b8506d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d30faf5e50014e38a0dfe48f6bf2f1ab",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b3b5fb6c3b55424fbd6d95510efbcdcc",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "de59864e18c74c67aca7fc06cbf17211",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "3d28cf06154842e29879c8b8cc85a912",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "cfa01277d1c341bfae93faa2d4ca53b7",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "82aa6c82d38542979bfcfe4cd36eb749",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8fdfef1a0fd34f98a9789fdd67863159",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "cc11ab6161d5453a9fed2569e981acab",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "07b5254faab348ec907495628bd80fd6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "783f3bad57354355a7938f5557b61eec",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c38424ae93d14f54a3df7fbbd3655675",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c74fa360a8304b28b2d77b821fc5c348",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0dce730fa7e24a8db59da95210a1fdf2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "40c0c3fdb7484163b7f36c355ddcf673",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0b506da3fb004e04b5cf28d24ebafdff",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0343e73df8c94be2ba4d3b40f945b1bf",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5946b663768949cdab4344d4b8b235d7",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "07179f0424c64431886e3395f1f01aff",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a32e74be4fa242d9a98ea4b4a4dfe699",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "dc8a8c5c604a4fada2c3404d4b578d45",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "26723c1216af401fb7d62acd582a5785",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "289c5827cbe04523a6d1dabf6290f3e2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "4ca77128a39c462aa56698ed8726dc44",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0c5c4e6f947a4587ada6dee696c93178",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ff8ce423ee004fdcae5641dac4801dbc",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f5104f40774643318e52229cdbb641a9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c6a5ebfba21548ff8bed55c5f523a196",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8eeff172eba4477899b1dc834f5c1ca6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "3196d7dacf224ad1b8822aceb902842a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "6e1121631eb847f1908f1dca4f1e7ce3",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "429dcf864e6f4851ab437c9fa8532a02",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5d6ac582339f44389e367330bf70a40c",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e77be8e5e9fb4b408fc5a9f9b5e69436",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "3c41389ab090456888fbf739f9aa5917",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "29b5671aed504656b7ad8d1b08d6dd1b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "38cfb5522322415a900d30603bee42a4",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "43eb62d0bb3b418db420e76457bcb131",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "73a76f6a23ae4e359f77423d3e70f900",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1bfa4ac8f812423395ce8ff3a2e54dbe",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e9764020be664fcf91f66cd1d6317a57",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2c48f7c7b02c4c96838aaee5e8a72710",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f6db13cb54a14fe2a13ed553fdccc778",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5f8804655430459bae3d2547abd4aab6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "af7198222cd74b2a86c10b3cac6d0aac",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b61bf0ef382f40a3abc92d32125dcf5a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "de4dc87c0ab149eb9eaf186c1c9c86fa",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1bef38d00fe14651a8195d6508eddf52",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "652e2ba00b3a493c89ad1911ba67545a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "6a908e185c9b472ba3b625ae026b1d14",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "589da70f11804aa1b3bcde1066c6bbc5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d4b5dfc8a1bd42c4939044ecc5a214de",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d99fb29b69924283ba5206d8e8c8196c",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "472f51bc39fd405b82099d7d39e6d397",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "dae2d56241264c5096c7d13980ffd198",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "da1e16afa3b64c20ad9e613c0f668e79",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "455da55bbc4e43ef97faeaabad28a5f9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "be826cac05844e248971723429685076",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "9e5a8ccfd4b940c78b091bf979cd8abf",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "97ad29e123ee49a9bc576e48592b8514",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "12c30367659343b1a063882a5814df4b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "14ce1fdac54241c1bb9d38aebefac247",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "98c14e3ccb734be8bfa2125b1ba2ff1f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "874a228b6ba04fea919d136b00eef5be",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c1b37f3798ca4cbbb63cad2fe30ce47e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a27937d02b2f4760b9ef733be6f36905",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e61c8969748b46e88dfe1708b8c96f75",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "523ba517c57b469eb154d1e22f9a6fe3",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "58d1e86a71194f829aee132c6cf477b1",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "95e3fc85bce64441bf4dac71be5e68b3",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "82cd56c4e81b450ab00fa0439ada3593",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b70419418db14ad8a0423ad09220e410",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "4cbda79c00c44703aaefebefc91331a9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fffac6ac9e19409ba8c66117ba1fc66c",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d205229b6d8740ad905f36d6e75bd612",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "82e3a96c868a4665b5900cbca3a6f7c2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "605082a003e74d379d8b0478ba1e1c39",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "487616c7a7ab4fe2b835e58d325da067",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8983768ff7024e6198af0d5a0e9d4ffe",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ca53f312327b4d25ab00fe83ef292cb8",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a8e6db706f7c44a599443bb146ed6e40",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1d40f88e16634a35b4cc807d012f8a12",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b2bc94c1243a4e25b4679c051551bf17",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ab01d118bf024f9db2ed8273ab2c4a9b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "9e173520f036427ba98ae0746f9f9c30",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "af81d01193ab4ab68dfd0db5e98172ec",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5878e06b8ba6412c9e69c33d24ec4ca1",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d617fc69b0ab4227938932a4142072e8",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "4240427c1b2843a9834dfb5cc5728a6d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c89f88355f8c4b839e3b810c5e2d80fc",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5ef0253683dd478ca84362ce298d8412",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8b2e4a2c03184bd4a3f32356be55497e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2667b7040d23464daa07a165bf69270e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e710a05d740e49a1a6595d4616cff42f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "166614f0d68c4c008ff39f0eeeb2a627",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d00a197e89624c6c96848c2121176185",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "eabcdac497324116a36ec6b8ce187f81",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "326008b2141c424b8d6c9559fab07b2f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "9d9fc3c7afa84dd79068100c2a60a1e2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "bca31ad9cd81489cacbf6bfdc80b3bfb",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d94b895a91d54b4983b6eb7c4c901b27",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c5dbe9e2a2664bb0a3fb505d414f7590",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f7590b4242b94dec8e15fb66e243e2a2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "07d80f9eed4b4e019d5d8c0c6d3dfda5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "9ea792af26784595bf51e0359b27f71e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d2e0f95524d248808eccf54c9e3a4b2b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "dfbc3774194c4025bbf39b8d514add60",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "043189c7433b46c08334a13275cc2481",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "288c95778c2641329c3f48a7685a168a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1d7d426aaa5145d09a5ce03b97e66c08",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "de500d6257ca4d2faa6c5dc44ec32acf",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f15af31a4e904e8a914e83c8a85b6119",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c75b1e2031204f2aa25214a81eb31b2c",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8480f8192bad4a21b49c499f3fc1c028",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Validation: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "`Trainer.fit` stopped: `max_epochs=200` reached.\n"
     ]
    }
   ],
   "source": [
    "trainer.fit(model=lightning_model, datamodule=dm)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "4c6fa764",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAG2CAYAAACXuTmvAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAACLrElEQVR4nOzdd3hT5dvA8W+SpntAW+hgtGWPMstGUFBAluICF4qCirgAJ+JCfeXnQlQEFwgqCirgBKEoe++9VxkdlNE90uS8fzwZDR0ULE3H/bmuXk3OyvPkJDn3eaZO0zQNIYQQQogqRO/qBAghhBBClDUJgIQQQghR5UgAJIQQQogqRwIgIYQQQlQ5EgAJIYQQosqRAEgIIYQQVY4EQEIIIYSociQAEkIIIUSVIwGQEEIIIaocCYCEEEIIUeW4NABauXIlAwcOJDw8HJ1Ox6+//nrZfVasWEFMTAyenp7Uq1ePzz//vMA28+bNo1mzZnh4eNCsWTMWLFhwDVIvhBBCiIrKpQFQRkYGrVq1YsqUKSXa/tixY/Tr149u3bqxbds2Xn75ZZ5++mnmzZtn32bdunUMGTKEoUOHsmPHDoYOHcrgwYPZsGHDtcqGEEIIISoYXXmZDFWn07FgwQIGDRpU5DYvvvgiv//+O/v27bMvGzlyJDt27GDdunUADBkyhNTUVBYtWmTf5uabb6Z69er8+OOP1yz9QgghhKg43FydgCuxbt06evfu7bSsT58+TJ8+HZPJhNFoZN26dYwZM6bANpMnTy7yuDk5OeTk5NifWywWzp8/T1BQEDqdrlTzIIQQQohrQ9M00tLSCA8PR68vvpKrQgVACQkJhISEOC0LCQkhLy+P5ORkwsLCitwmISGhyONOnDiRCRMmXJM0CyGEEKJsnTx5ktq1axe7TYUKgIACJTK2Grz8ywvbpriSnHHjxjF27Fj785SUFOrWrcuxY8fw8/MrjWTbmUwmli1bRo8ePTAajaV67PKgsucPJI+VQWXPH0geK4PKnj8o/TympaURFRVVomt3hQqAQkNDC5TkJCUl4ebmRlBQULHbXFoqlJ+HhwceHh4FlgcGBuLv718KKXcwmUx4e3sTFBRUKT/QlT1/IHmsDCp7/kDyWBlU9vxB6efRdoySNF+pUOMAde7cmdjYWKdlS5YsoV27dvZMF7VNly5dyiydQgghhCjfXFoClJ6ezuHDh+3Pjx07xvbt2wkMDKRu3bqMGzeO06dP8+233wKqx9eUKVMYO3YsjzzyCOvWrWP69OlOvbueeeYZunfvzrvvvsutt97Kb7/9xtKlS1m9enWZ508IIYQQ5ZNLS4A2b95MmzZtaNOmDQBjx46lTZs2vPbaawDEx8cTFxdn3z4qKoqFCxeyfPlyWrduzVtvvcUnn3zCHXfcYd+mS5cuzJkzh2+++YaWLVsyc+ZM5s6dS8eOHcs2c0IIIYQot1xaAnTDDTdQ3DBEM2fOLLDs+uuvZ+vWrcUe98477+TOO+/8r8kTQghRiZnNZkwmk6uTUSSTyYSbmxvZ2dmYzWZXJ+eauJo8uru7X7aLe0lUqEbQQgghxH+laRoJCQlcvHjR1UkplqZphIaGcvLkyUo7Jt3V5FGv1xMVFYW7u/t/em0JgIQQQlQptuCnZs2aeHt7l9vgwmKxkJ6ejq+vb6mUeJRHV5pHi8XCmTNniI+Pp27duv/p3EkAJIQQosowm8324Mc2fEp5ZbFYyM3NxdPTs1IHQFeaxxo1anDmzBny8vL+U9f5yvmOCiGEEIWwtfnx9vZ2cUrE1bJVff3XdlESAAkhhKhyymu1l7i80jp3EgAJIYQQosqRAEgIIYSoYiIjI5k8ebKrk+FS0ghaCCGEqABuuOEGWrduXSqBy6ZNm/Dx8fnviarAJAASQgghKgFN0zCbzbi5Xf7SXqNGjTJIUfkmVWBCCCFEOTds2DBWrFjBxx9/jE6nQ6fTMXPmTHQ6HYsXL6Zdu3Z4eHiwatUqjhw5wq233kpISAi+vr60b9+epUuXOh3v0iownU7H119/zW233Ya3tzcNGzbk999/L1HazGYzw4cPJyoqCi8vLxo3bszHH39cYLsZM2bQvHlzPDw8CAsL48knn7Svu3jxIo8++ighISF4enoSHR3Nn3/+eXVvVglJCZAQQogqTdM0skxlP9WEl9FQ4h5NH3/8MQcPHiQ6Opo333wTgD179gDwwgsv8MEHH1CvXj2qVavGqVOn6NevH2+//Taenp7MmjWLgQMHcuDAAerWrVvka0yYMIH33nuP999/n08//ZT77ruPEydOEBgYWGzaLBYLtWvX5qeffiI4OJi1a9fy6KOPEhYWxuDBgwGYNm0aY8eO5X//+x99+/YlJSWFNWvW2Pfv378/aWlpfP/999SvX5+9e/diMBhK9N5cLQmAhBBCVGlZJjPNXltc5q+7980+eLuX7DIcEBCAu7s73t7ehIaGArB//34A3nzzTXr16mXfNigoiFatWtmfv/322yxYsIDff//dqdTlUsOGDeOee+4B4J133uHTTz9l48aN3HzzzcWmzWg0MmHCBPvzqKgo1q5dy08//WQPgN5++22effZZnnnmGft27du3x2KxsHz5cjZu3Mi+ffto1KgRAPXq1SvR+/JfSAAkhBBCVGDt2rVzep6RkcGECRP4888/7SMmZ2VlERcXV+xxWrZsaX/s4+ODn58fSUlJJUrD559/ztdff82JEyfIysoiNzeX1q1bA5CUlMSZM2e48cYbC913165d1K5d2x78lBUJgIQQQlRpXkYDe9/s45LXLQ2X9uZ6/vnnWbx4MR988AENGjTAy8uLO++8k9zc3GKPc+m0EjqdDovFctnX/+mnnxgzZgwffvghnTt3xs/Pj/fff58NGzYA4OXlVez+l1t/rUgAJIQQokrT6XQlropyJXd39xJN/7Bq1SqGDRvGbbfdBkB6ejrHjx+/ZulatWoVXbp0YdSoUfZlR44csT/28/MjMjKSf/75hx49ehTYv3nz5pw6dYqDBw+WaSmQ9AITQgghKoDIyEg2bNjA8ePHSU5OLrJ0pkGDBsyfP5/t27ezY8cO7r333hKV5FytBg0asHnzZhYvXszBgwd59dVX2bRpk9M2b7zxBh9++CGffPIJhw4dYuvWrXz66acAdO3ale7du3PHHXcQGxvLsWPHWLRoEX///fc1SzNIACSEEEJUCM899xwGg4FmzZpRo0aNItv0fPTRR1SvXp0uXbowcOBA+vTpQ9u2ba9ZukaOHMntt9/OkCFD6NixI+fOnXMqDQJ48MEHmTx5MlOnTqV58+YMGDCAQ4cO2df//PPPtG/fnnvuuYdmzZrxwgsv/OfJTi+n/Jf5CSGEEIJGjRqxbt06p2XDhg0rsF1kZCT//vuv07InnnjC6fmlVWKaphU4zsWLF0uULg8PD7755hu++eYbp+UTJ050ev7YY4/x2GOPOS2zlUwFBgYyY8aMEr1eaZESICGEEEJUORIACSGEEKJII0eOxNfXt9C/kSNHujp5V02qwIQQQghRpDfffJPnnnuu0HX+/v5lnJrSIwGQEEIIIYpUs2ZNatas6epklDqpAhNCCCFElSMBkBBCCCGqHAmAhBBCCFHlSAAkhBBCiCpHAiAhhBBCVDkSAAkhhBBVQGRkJJMnT3Z1MsoNCYCEEEIIUeVIACSEEEKIKkcCICGEEKKc++KLL6hVq5Z98lCbW265hQcffJAjR45w6623EhISgq+vL+3bt2fp0qVX/XqTJk2iRYsW+Pj4UKdOHUaNGkV6errTNmvWrOH666/H29ub6tWr06dPHy5cuACoSU7fffddGjRogIeHB3Xr1uX//u//rjo914IEQEIIIao2TYPcjLL/K2QG9qLcddddJCcns2zZMvuyCxcusHjxYu677z7S09Pp168fS5cuZdu2bfTp04eBAwcSFxd3VW+JXq/nk08+Yffu3cyaNYt///2XF154wb5++/bt3HjjjTRv3px169axevVqBg4ciNlsBmDcuHG8++67vPrqq+zdu5cffviBkJCQq0rLtSJTYQghhKjaTJnwTnjZv+7LZ8Ddp0SbBgYGcvPNN/PDDz9w4403AvDzzz8TGBjIjTfeiMFgoFWrVvbt3377bRYsWMDvv//Ok08+ecVJGz16tP1xVFQUb731Fo8//jhTp04F4L333qNdu3b25wDNmzcHIC0tjY8//pgpU6bw4IMPAlC/fn2uu+66K07HtSQlQEIIIUQFcN999zFv3jxycnIAmD17NnfffTcGg4GMjAxeeOEFmjVrRrVq1fD19WX//v1XXQK0bNkyevXqRa1atfDz8+OBBx7g3LlzZGRkAI4SoMLs27ePnJycIteXF1ICJIQQomozeqvSGFe87hUYOHAgFouFv/76i/bt27Nq1SomTZoEwPPPP8/ixYv54IMPaNCgAV5eXtx5553k5uZecbJOnDhBv379GDlyJG+99RaBgYGsXr2a4cOHYzKZAPDy8ipy/+LWlScSAAkhhKjadLoSV0W5kpeXF7fffjuzZ8/m8OHDNGrUiJiYGABWrVrFsGHDuO222wBIT0/n+PHjV/U6mzdvJi8vjw8//BC9XlUU/fTTT07btGzZkn/++YcJEyYU2L9hw4Z4eXnxzz//MGLEiKtKQ1mQAEgIIYSoIO677z4GDhzInj17uP/+++3LGzRowPz58xk4cCA6nY5XX321QI+xkqpfvz55eXl8+umnDBw4kDVr1vD55587bTNu3DhatGjBqFGjGDlyJO7u7ixbtoy77rqL4OBgXnzxRV544QXc3d3p2rUrZ8+eZc+ePQwfPvw/5b80SRsgIYQQooLo2bMngYGBHDhwgHvvvde+/KOPPqJ69ep06dKFgQMH0qdPH9q2bXtVr9G6dWsmTZrEu+++S3R0NLNnz2bixIlO2zRq1IglS5awY8cOOnToQOfOnfntt99wc1PlKq+++irPPvssr732Gk2bNmXIkCEkJSVdfcavASkBEkIIISoIg8HAmTMF2ytFRkby77//Oi174oknnJ5fSZXYmDFjGDNmjNOyoUOHOj2//vrrWbNmTaH76/V6xo8fz/jx40v8mmVNSoCEEEIIUeVIACSEEEJUIbNnz8bX17fQP9tYPlWBVIEJIYQQVcgtt9xCx44dC11nNBrLODWuIwGQEEIIUYX4+fnh5+fn6mS4nFSBCSGEEKLKkQBICCFElXO1Y+QI19OuYBLZ4kgVmBBCiCrD3d0dvV7PmTNnqFGjBu7u7uh0Olcnq1AWi4Xc3Fyys7PtIzJXNleaR03TOHv2LDqd7j+3V5IASAghRJWh1+uJiooiPj6+0PF0yhNN08jKysLLy6vcBmn/1dXkUafTUbt2bQwGw396bQmAhBBCVCnu7u7UrVuXvLw8zGazq5NTJJPJxMqVK+nevXul7Z11NXk0Go3/OfgBCYCEEEJUQbYqlPIcWBgMBvLy8vD09CzX6fwvXJnHylmpKIQQQghRDAmAhBBCCFHluDwAmjp1KlFRUXh6ehITE8OqVauK3f6zzz6jadOmeHl50bhxY7799lun9TNnzkSn0xX4y87OvpbZEEIIIUQF4tI2QHPnzmX06NFMnTqVrl278sUXX9C3b1/27t1L3bp1C2w/bdo0xo0bx1dffUX79u3ZuHEjjzzyCNWrV2fgwIH27fz9/Tlw4IDTvp6entc8P0IIIYSoGFwaAE2aNInhw4czYsQIACZPnszixYuZNm0aEydOLLD9d999x2OPPcaQIUMAqFevHuvXr+fdd991CoB0Oh2hoaFlkwkhhBBCVDguC4Byc3PZsmULL730ktPy3r17s3bt2kL3ycnJKVCS4+XlxcaNGzGZTPYW5Onp6URERGA2m2ndujVvvfUWbdq0KTItOTk55OTk2J+npqYCqnueyWS6qvwVxXa80j5ueVHZ8weSx8qgsucPJI+VQWXPH5R+Hq/kODqttMaUvkJnzpyhVq1arFmzhi5dutiXv/POO8yaNatAFRbAyy+/zDfffMOff/5J27Zt2bJlC/379ycpKYkzZ84QFhbG+vXrOXz4MC1atCA1NZWPP/6YhQsXsmPHDho2bFhoWt544w0mTJhQYPkPP/yAt7d36WVaCCGEENdMZmYm9957LykpKfj7+xe7rcvHAbp05EdN04ocDfLVV18lISGBTp06oWkaISEhDBs2jPfee88+KFKnTp3o1KmTfZ+uXbvStm1bPv30Uz755JNCjztu3DjGjh1rf56amkqdOnXo3bv3Zd/AK2UymYiNjaVXr16VclyHyp4/kDxWBpU9fyB5rAwqe/6g9PNoq8EpCZcFQMHBwRgMBhISEpyWJyUlERISUug+Xl5ezJgxgy+++ILExETCwsL48ssv8fPzIzg4uNB99Ho97du359ChQ0WmxcPDAw8PjwLLr+UgWeV9AK7/qrLnDySPlUFlzx9IHiuDyp4/KL08XskxXNYN3t3dnZiYGGJjY52Wx8bGOlWJFcZoNNrnAZkzZw4DBgwochI1TdPYvn07YWFhpZZ2IYQQQlRsLq0CGzt2LEOHDqVdu3Z07tyZL7/8kri4OEaOHAmoqqnTp0/bx/o5ePAgGzdupGPHjly4cIFJkyaxe/duZs2aZT/mhAkT6NSpEw0bNiQ1NZVPPvmE7du389lnn7kkj0IIIYQof1waAA0ZMoRz587x5ptvEh8fT3R0NAsXLiQiIgKA+Ph44uLi7NubzWY+/PBDDhw4gNFopEePHqxdu5bIyEj7NhcvXuTRRx8lISGBgIAA2rRpw8qVK+nQoUNZZ08IIYQQ5ZTLG0GPGjWKUaNGFbpu5syZTs+bNm3Ktm3bij3eRx99xEcffVRayRNCCCFEJeTyqTCEEEIIIcqaBEBCCCGEqHIkABJCCCFElSMBkBBCCCGqHAmAhBBCCFHlSAAkhBBCiCpHAiAhhBBCVDkSAAkhhBCiypEASAghhBBVjgRAQgghhKhyJAASQgghRJUjAZAQQgghqhwJgIQQQghR5UgAJIQQQogqRwIgIYQQQlQ5EgAJIYQQosqRAEgIIYQQVY4EQEIIIYSociQAEkIIIUSVIwGQEEIIIaocCYCEEEIIUeVIACSEEEKIKkcCICGEEEJUORIACSGEEKLKkQBICCGEEFWOBEBCCCGEqHIkABJCCCFElSMBkBBCCCGqHAmAhBBCCFHlSAAkhBBCiCpHAiAhhBBCVDkSAAkhhBCiypEASAghhBDXXLbJzKJd8aRmm1ydFADcXJ0AIYQQQrheSqaJAG/jVe07c80xpq85RmSQD83DA3ioayQh/p5O27z6625+3nKKmn4evHlrNDdHh5ZGsq+alAAJIYQQ+SSn5/DrttOYLZqrk1Jmftp8klZvLmHSkgNXvO+05Ud444+9nDyfxapDyXy+4gj3f70Bk9li3yY+JYsF204DkJSWw8jvtzDyuy1km8yllocrJSVAQgghqgxN00jLycPfs+iSjid/2Mr6o+dJTM3msevrO607fTGL9Ow8Gof6Fdhv56mL6HU6omsFAPD37nimLj9Ch8hA7mpXp9B9bJLSshm/YDftI6vzaPf6RW53JX7bfpqNx84zuF0dWtWpVuR22SYzHyxWgc8n/x6mY70gujYIBiAnz8y2uIskpmbTNzoMdzc9SanZPDxrE+fTcwn0dWf36VQAHru+HhGBPnyw5ACHktKZueY4j3SvB8A3a46TZ9FoF1GdjvUC+WLFUfIsFjzcXFcOIwGQEEKIKuFCRi6PfreZnadS+PbhDnSsF1Rgmy0nzrP+6HkAZqw5xkNdo3B303MxM5eP/znEd+tOALDomW40DHEENHHnMrlj2lpMZo2R19cnIsib8Qt2YdFg56kUvl59jJua1uR/d7Qk2NfD6TXTc/J46JtN7DmTSuzeRKJrBdClfnCJ8jR7wwk+XHKQj+9uTbeGNezLf9gQx8sLdlm3iaNDVCD/u70F9Wr4AnA+IxeAQB935myMIyktx77v2J+2M75/M/7ccYZVh5LJspbS/NE0nklDWvHId1vsQc+ZlGwAnu/TmCd6NADATa/jhXk7mbz0IANbhePtYeCHDXEAPH5DfW5sGkL/FuFU9zGi0+lKlM9rQQIgIYSoJCwWjdh9iTQK8aN2gHupHG/HqYvkWTTaRwaWeD9N01h+4CwrDp5lW9wFLBp0rh9E27rV8XDTYzToaRdZHU+j4T+nsTgZOXmsOZyMTqcjwMvIywt2cTgpHYAPlxzkp5GdC+wzddkR++PE1Bz+3HmGNnWrc9fn60hOdwQJC3cl8Ey+AOiHjXGYzKrK7PMVjmMMbBWOKc/C0n2JLN2XxM2TV/Hh4FZc30gFKyazhVGzt7LnTKp9n/ELdrPomW5c7t1JTs9h4sL9pOfk8dK8XcSO7Y63uxs/bTppD37a1q3GzlMpbDx2nqHTN7JgVBeOJWcwYtZmTBYL4/o2ZZo1veP7NeXHTXEcPZvB0z9us79OsK8Hqdkmlu5L5Ib3l3M+I5dq3kY+GtKazBwzoQGexERUt29/Z0xt5myKY2vcRYbP2kQNPw/Sc/JoUNOXHo1rAtAs3F/l3+S6BtESAAkhRDEuZubyzJzt9G8RxuD2dVydHACSUrNBBzX9nBuZvr/kANOWH8HPw40fR7S/7HEmLz3IoaR0PryrlVMwYrFovLf4AL9sOUlyuiop+GZYe3o0qem0/2/bT+Om19O/Zdglxz3Ex/8cclq263SK0/N7O9blndtaFJquE+cy+HLlUQa1qXVFgZdNYmo2b/65l3/2JZJtsjitC/X35HxGLhuPn2fD0XNOpUD7E1L5Z38SOh3c2bY2P285xecrjmAyaySn51Cvhg+d6wUxe0McS/cl8sxNDQFVTfTT5pMA3N+pLr9uO0N6Th4jrotifP+m6HQ6DiSk8fSP2ziQmMbDMzfxxf0x9GxSk+d/3sHKg2fxMhr46oF2jP1pO8eSM5i67DBP9ahXbD4/XnqI9Jw8QFXNffzPIUL8PHnzz70APNQ1ktcGNONMSjb3f72BY8kZ3P3Ves5czLK/L6//vgeA8ABPHugSQef6Qdzz5Xo8jAbuaFuLW1vXommYH2sOn2PEt5s4n5GLm17H1PvaFllKpdfreGtQNLdOWeMU2D3arR56vetKfC4lAZAQQhRj/tbTrDh4ln3xqdzVrrZTkX22yczyA0l0a1gDH4+y+Tm9kJFLn8kr0et0LHv+Bntblu/WHWfacnUnn5aTx4jvtvJ4g6KPcy49h0/+OYRFg37RYU5BzMy1x+2lGAa9DrNF4+2/9nJdw2CMBtVm43hyBs/M2Y5OB20jehIW4AXAVyuP2oOfu2Jq061RDTRNY83hZA4kpGHWNHafTuWnTSd5okcDalXzckrXuiPneHz2Fi5mmvh122nmj+paZNuZ/I1s83v+l52sPHgWgIggb/w9jcSnZFG/hi8fDWnNlGWH+WFDHFOWHbYHQOk5ebz/t2oH0y86jPH9m/LnzngOJqoSo1rVvJj7qCox+mFjHLtOpxCfkkVYgBd/707gfEYuof6evDGwOU/2aMiJcxl0iAq0f14ah/rx25NdeXHeTn7bfoYnfthK90Y1iN2biJtex2f3teG6hsFMuKU5j8/eytTlR2gc4mPPU1JqNn/tiueffUlU8zbSs0lNftioqpUeu74eX6w4ypcrj6JZ223bgh+dTketal7MeqgDt09bw9GzGQD0bFKTTvUCeX/xAUxmjVE9GuDhZiC6VgCbXrkJo0GPIV+wcl3DYGY+1IEPFh9gaOeIy1bRNQ8P4K+nu7HmcDLxKVn4eLhxe9taxe5T1iQAEkKIYqw8pC6kSWk5HDmbToOajovx9NXHeH/xATpEBvL9iI64Wxt0aprG1OVHWH4giffubEVUsE+hx74a3647wYVMVW3w67bTPNA5kpUHz9rv5EdeX5+l+xI5nJTO5/sN3JKTR3VjwQa/yw6cxdbJ6Y8dZ+wB0PHkDN5bvB+Al/o24a6Y2vT6aCVHzmYwZ2McQztHArBod4I1r7BoVwIPXxfF37vj+b+F+wB4rncjnuzZ0P56t7Z2XPzu+XI9646e48sVR5hwazTZJjNrjyQTuzeJnzefJM+i4e6mJyPXzPBZm/jtia4E5Ws3k5tnYdryI0xdfpjaXgYiWqfSOkIFMmsOJ7Py4FmMBh0/PNKJdhHVC7Qzefz6+szddJJVh5J535rXORtPci4jF51OtVOp5u3O4Ha1mbXuBH4ebswY1p4afioNbepUY2vcRf7Zl8T9nSKYbW3fcneHOrgZ9IQGeBIa4Fw6B+BpNPDBXa1Iz87jn/1JxO5NRKeDSUNa07NJCAA3R4dye9tazN96mmfm7mRAHR1/z9nB4r2J5O+U9ufOeABualqTcX2bcjw5g8V7EgHVHmfUDfWd8l03yJsZw9rz9I/b6BgVxFuDonF309OzSU0OJqbTN1+X9KKqJjvVC+KXx7sUuq4wjUP9im347WrSDV4IUSmdvpjFiFmbWGUNYK5GtsnM+qPn7M/XHjnntH6FtZRh4/HzvPrrbjRNIyfPzJi523l/8QE2Hb/A29bqiNKQlWtm1rrj9uffrTuByWzhjd/3YNFgcLvavHhzY2Y+1J4avu7EZ+p4ab5K16WW7k20P/73QBJp2SYsFo0X5u0k22ShS/0gHu1WjyBfD8ZYq3o+WnqIlCwVfP29O96+/6Ld8WiaxuSlquRnWJdIe4PYwjzVU637cdNJft9xhhs/XMHDMzfz48Y48iwat7QKZ+XzPagb6M2pC1k8PnsruXmqtOdAQhoDPl3FR0sPkpNn4Uiajts+X8+4+btITs/hf4tUQHNfxwjaRwYW2si2TqA3t7YOB+CzZUf4bNkRzmXkEhnkzRf3x9h7cY2+qRH3dazLzIc7OF3Ib2qmgpWl+xLZeOw8G4+dx6DXcXf7ukXm2cZo0DPl3rZ0jArEoNcx8bYW3NIq3L5ep9Px3h0tua1NLfIsGr+eMLBojwp+2tatxiv9m3Jfx7p4uxvwcTfwUt8mALw1KJo72tbmk3va8ESPBoXmu2Xtaix/vgfv3tnSHqw3qOlHvxZhLm2M7CpSAiSEqJSmLT/M0n1JbDp+gdix3Z3ay+w4lcL0A3q+OL6OC5kmRl5fnwe7RBY4xqbj553akKw5nMwD1hKQbJOZ7Scv2tfN3XySvfGpJKZmk5SWY68++Gd/EpuPn6ddvrYsthKPNYfPEZ+SxT0d6jr14AHVjiU5PYfm4QH2ZT9tPsn5jFxqVfPiQmYuh5LSefanHRxNziDIx51XrVUetat789m9rbnnqw0s3pvE1OVHnAKSbJPZXrLl5+lGWnYesXsTOZuWw8Zj5/F2N/DuHS3t7TXu6VCXWetOcDgpnclLDzL8uih2nEpBp1MlQJtPXOD3HWfYn5CGp1HP6JsaFntB7Vw/iDZ1q7Et7qK9sW0NPw/6NA+hd7NQujUMRqfTMf3Bdtw2dS0bj53ntd9280j3etz71XrOZeQS5OPO2JsaMH/NbrYk6/lxYxzzt54iJ8+Cr4ebPcgqyri+TfHzcCMzV/VwahdZndvb1rZX8QFU93Hn/wppp9SraQjv/X2ANYeT7QFy3+jQQkt9CuPlbuDHRzpxMctEoE/BxupuBj0f3NUKd4OO+VtOMrB1LR69vj5NQv3t24zv35TcPAvVvNX+Nf08+XBwqxK9vlAkABJCVDo5eWb+2KFKKFKyTLyyYDdfDI1Bp9Ox+fh5HvhmM5m5eiANgPcXH2BQm1oEeDlXFa04oIKExiF+HEhMY/3R85gtGga9ju0nL5KbZ6GmnwePdKvH/y3cZ2/o6+fhxmf3tWXR7nh+3HiS9/4+wNzHOqHT6ThzMYv7v97A0eQM++ss3JVA/xZh3NepLg1r+jFno2qfkpNn4bN729K/ZRh5ZgtfrToKwMgb6rP3TCo/bozj9x1nAHjmpob45Rvbpk2datwVZWHOUQPvLz7A2iPJDGgZzqDWtVh/7ByZuWZC/T0Z3L4On/xziM+WHeb4uUxAXVzrBHrbj+Vm0PPagGY8MGMjs9Yet5cCdYwKJDfPwta4i4ybr3od3dG2tv2iXBSdTsdTPRvw8MzNgGo4PK5v0wLtqBqG+PHpPW14eNYm5mw6yZ8740nPyaN5uD/fDe+In7sO36SdPHtrR95eeIC98arB7aPd6zlVmRWmhp8HE26NLnabojSo6UtEkDcnzmViMmv0aFyDd+9oeUXH0Ot1hQY/Nga9jrdvbUZnt+P07x+N8ZJqTG93Ny7zNovLkABICFFuaZpWaElCWraJg4npNA71w7eQxsf/7ksiJctEdW8j6Tl5LNmbyEdLD1HTz4P/LdpPZq6ZRgEWnhsYwwexhziYmM7sDScYdYNzqYGtlGRUj/qMX7CblCwT++JTia4VYL/z71gviBHdoqhXw4fMXDPh1TxpGOKHv6eRhiG+zN96mo3HzzN1+RGuaxDMkz9u5eT5LIJ93enVLAS9TsePG+P4a1c8f+2KL5CXl+btpFm4P1OXHebUhSyCfNy5K6Y2R+qm86O1EWy9YB/u6VCw+qVziIZPWATT15xgzeFzrDl8jllrj1PXGtzc1Kwmt7QK55N/DnHE2jh2YKtw7i3kWN0b1WBAyzD+3BnP/K1qRN++0WGYzCoAspWkPNQ1svCTeYmeTUL4YmgMwb7uxEQU3dOrR5OavNy3Kf+3cJ+9K/W3D3cg0Mfd3oW6fWR1/njqOn7ZcpIT5zJ5tHvxvaf+K51Ox+1tavPR0oPc36kubwxsjpvh2rQoqYI1U2VGAiAhRLl08nwmt09bS6d6Qbx/Z0s8jQYW7opn+upjbD95EbNFw8PaiPP+ThH2kWsB5lkv0Hd3qIunm4GPlh7kk3zdsjtFVeeOGmfp0bgGaTkWnv15BzNWH+fhrlH2BqBnLmZxMDEdvQ6ub1SDjlGB/LM/iTWHk4muFcAG62B5neqpdiY3Ng0pkIewAC+GdYnki5VHeX/xAd63jrYbEeTNj490ItzaA+q+jhF8tuwwO05d5NSFLGr6eTCuXxO+Xx/HlhMX6PfxKrJMZgx6HRNubY6n0UDz8AC61A9i7ZFzvNyvqVPVTX4v3dyYB7pE8deueGasPsb+hDT2J6iSrxubhtCgpi/NwvzZG59KvWAfJt7eosjqq1cHNGP5gbP2rtc3R4eSZ9F4+y/V8Llbw2CnRuKX06d5yeaCGtEtirScPHaeusj/bm9ZaOmOQa9jSAna4JSWp29swD0d6xQYikBUHBIACSHKpXlbT3E2LYc/dpzhfEYOjUP8mbHmmH19gJeRlCwTi3YnsGi3qkJ6uX9TPN30LD+QBMDtbWoRGezDuYwcjlmrnOrX8GXMjfVYvnQJALe0DufDJQc4k6LGjjlzMYtD1q7PAK3qVKOatzud6wfxz/4k1h45x7CukWyNuwBAx6iCownn91yfxlT3cWfR7gR2nLxIvRo+/DCik1N7kWbh/nx2X1tAdcf2Mhow6HV0iAqi7+SVpGbn4W7Q88k9bZwmkPx8aAwJKdk0Cik+6IgI8mHUDQ24tXUtHpm1mb3xqXi7G+hs7QL+Ut8mfLPmGOP7Ny20RM0mxN+T53o34o0/9tKpXqB9sktbIPZYKU3hcCmdTsfYXo2uybGvlk6nk+CngpMASIhyRtM0Hvl2C4mp2bw1KJrWxczhU5kt2ePopWSrvgF4rHs9hnaOoFY1L/acSWXuppPM3nDCXoUU5ONOnkWjZe0A+1QFb17S1iP/6LNGg56Hr4vi7b/22Yfrz693MxVw2EqY1h89x/TVx8jJsxDs60H9GsV3cTca9Iy8vj4jr6/PxcxcvNwNeLgVPcZv/gCkVjUvPr8/hmkrjvBY9/pc19B57BV/T2Oxc1pdqlY1L355vDNT/j1MdK0Ae2lX90Y16N6oxmX2Vh7sEklksA/NwhwNcqfe15YzF7Pto/sKURFIACREOXM0OYOl+9TF/45paxl1Q33G3NTItSOoxr4OGz6Hx1ZCjcZOq06cy2DvmVQ8jQaCfN1pWbvaf365k+cz2Rufil4H0x9sz5iftmPKs/Dh4NZOJSDRtQKIrhXAPR3qMuGPPWw4dp5z1jmO7oqpXeLXu6dDXX7Zcoq07Dxua1OLGxrXICPXjMWi2QOfxiF+tI+szqbjF3jPOmBex3qFd7MuyuUaBxemS4NgujQoftC5K+Ht7sYLNze56v11Oh03NHYeEbqat/tV5U0IV5IASIjywmyCTV+z/0JtQI+3u4HMXDOf/nuYuoHe3NWu8GkYzlzMYvmBs9wZU9s+tkdps+yehz4vGw4ssgdA2SYzU/49zOcrjpBn0aijS6S3fgt7B47l7k4Fq0I0TcNk1tDQii0BAVi8Rw2y1z4ykB5NarLqhR5oUGRpR7Nwf+Y+1pkLGblsO3mBCxkmBrUp+aizPh5u/D26e7Hb6PU6Zj3cged+3sHCXSp9naIKabx7+B/IvgjRd5T49YUQZc/lAyFOnTqVqKgoPD09iYmJYdWqVcVu/9lnn9G0aVO8vLxo3Lgx3377bYFt5s2bR7NmzfDw8KBZs2YsWLDgWiVfVFWaBf3mGTD7LrhYsNqEzTPg54cgL7fkx/znTfj7JdpveQHQeLJnA562jmUya93xQgezO3lezUD98oJdfLnySIH1pUHLuoA+Rc1zlHBIdVtOzTZx65Q1TFl2mDyLRrMwfyb6zOVV4/cc+nsqZ60zS6tJMZMY/Pk6GoxfRKNXFtHstcX8tv10sa+5xDpIn62RrF8Jq3qq+7jTs0kId8TUdhrGv7R4u7sx5Z62vHBzY7o1DGZAy3DnDTLOwY93wy8PQ/LhUn99IUTpcWkANHfuXEaPHs348ePZtm0b3bp1o2/fvsTFFXJBAaZNm8a4ceN444032LNnDxMmTOCJJ57gjz/+sG+zbt06hgwZwtChQ9mxYwdDhw5l8ODBbNiwoayyJSq7lFN0OfwehsUvwKElsHue83pNU8HMnvlwsoSfu0NLYe0nANTMO0N93RmuaxDMsK5RuLvp2X06hf27t4DFMSjf2cR4nvlqEfEp2QDMWneCnDxzsS+zLe4Cj3y7mRmrj2G2jqufbTJzPqPoQG3nlrX2x+YzaqyXnzef4kBiGkE+7nx+f1sWPtONrj6nAGiSd5CJC/ex6fh5bpu6lmHfbGLj8fP21zNbNF6at4tDiWmYLRrzt57it+2nybPO63QuPYfNx1UPq97NC/ascjW9XseoGxrw3fCOVL90HJc988FsfS+P/Fv2iRNClJhLq8AmTZrE8OHDGTFiBACTJ09m8eLFTJs2jYkTJxbY/rvvvuOxxx5jyJAhANSrV4/169fz7rvvMnDgQPsxevXqxbhx4wAYN24cK1asYPLkyfz4449llDNRaWkabnMGUyP9oGPZhePO26SehizVQ4i0hMsfM+UULHgMAIveiN5iYoDnDpqHP4JBr2NAyzByt/9C03mfQuJYuOl1/tlzhnq/9GKm5Rz3Vf+cxDxfktJy+HNHPHfE1CYpLZszF7PxNOrRNLiQmUvs3kRmrj2OpkHs3kT+3p1AqzoB/LzlFJk5ZmY+1L5AWxNN09i4fiW28WVDcuM4eyHFPv7M6F6NuDk6DLJT0aWoAChaf5znt51m/jZVyuNp1HNfxwju7xRBdW8jT/6wjdWHkxn5/Rb8vYxsi7sIwIdLDjKgZRjbT17EokF0LX9qV/emQtn+g+Px0eXQ8dFr+3rnjsCZbaq6zZUDxiQfhvjtrk9HeXH2IMStg/o9oFrZdc0XV8ZlAVBubi5btmzhpZdeclreu3dv1q5dW+g+OTk5eHo6dzv08vJi48aNmEwmjEYj69atY8yYMU7b9OnTh8mTJxeZlpycHHJycuzPU1PVaKImk8mpt0hpsB2vtI9bXlS6/KWcwrDyf5jbjYCw1pC4G2PyQfJ07midRmFcNxnLuaOY8+VXd3q7/YtlTjmNpaj3QtPQ7V2A4e8X0GVfRAtpwSrPHlx/4hP6e+zCYs7DYoZ72tXi0M7dAORsmM7I4z0xHV3D9+6nQAdf9oRfUurw4dLDfL3qKDkmE6//sQ+TuWCVGUCPxsFsPHaBjcfPs9Fa0gIwZu52/niyM9W9HQPM/bMvEb+L++2/FG46C1/88heHkwLwMurp37wmJpMJXfwue54b6U/jQS4mnTt3xdTimZ4NqHnqb3Rbf8Jywzjev6M5t05dbx94z8fDgIebnrjzmUxd7qjGG9Ai9Jp9jq7J5zT5IMYzW+1PteMrycvJAv21+5k1zH8U/enN5Jly0FoMdlp3JXnUnVyPftt3mG98A3xK1hvMKR3zRqCP30ZeTgZaq3uveP+rVSrnMS8Hfex4dNaqbC24EZYbJ4C++HZqJOzEsPFzzDe8Av7OVaFuPw1Fd1bNSWap3RHzoM8hQLXh02/8HEzZWLo8c9lgsdL9nibtxbDuU8zdnoNA1U6wtPN4JcdxWQCUnJyM2WwmJMS5iDskJISEhMLvmvv06cPXX3/NoEGDaNu2LVu2bGHGjBmYTCaSk5MJCwsjISHhio4JMHHiRCZMmFBg+ZIlS/D2vjZ3oLGxsdfkuOWFq/Kn08wYzNnkuRXdNVmn5WHMyyTXeJkuu5pGl8PvUiN9L+ePbGNNo/E0TPidZkCyXzMOJfvQDcg6s4+lCxfad2uU8DtNrY+P7VrPnvNRhR6+UcKvNI2fD8BFr0g2BQ1j5kE91wP1s3fx9+8/k+fmg6ZBtJsqTfEwpWA8+g+3GDbaj3N+20KCAnUY9Qb2JaTx8q9q8k1/o4YFcNdyecZtPtfrtrIs9DECA/Po5g0LjuvRgA41NP6M05OYlsOIL/7l4UYWdDrINsN7v+1gql5dGMzoMWAh5fg24AZaVc9j1b9qLJ2I5GW0tqbHgJknax/HEFiPWsYTbFp5nL67nsbdnMH6JHeS/Zpzd12YedBApJ/GHZF5eLnBuiQdZzJ0hHpr1PGBkIt7Wbjw8hOJGvMyMOvdsehL3h3cpjQ/p03P/EwjIMG/FYEZh3HPSWPdvM+44NPwsvteDTdzJv1ObwEgbekHrDzpW+h2heXRLS8Ds8EDTeeGV24yN+x/FTdzBgfP5nAg7PbLvrZ7Xhomgxeazg1jXgZ947cDkL3kbf495YemswYPmkbbE19gNGewsd4zaLprc8kp6jx65p6n09FJJPi3Zn/4nYVuE3U2lpanvnMsOPov25L0nK7eqegX1CzcsP9VArJPcur0abZFPGZf5ZOdwE1n96Ohghv9qQ2cnj2KrZGP452TSK+9rwCw5oyuxJ8NW/7czFl0ODqZPL0nu2rfT5bHlQerl9JpebjnpZNjrPafj1UsTaP7wQlUzzzKxWPbWNXwFdA5WuGU1ncxMzOzxNu6vBfYpV1Iixr6HuDVV18lISGBTp06oWkaISEhDBs2jPfeew+DwRGtX8kxQVWTjR071v48NTWVOnXq0Lt3b/z9S3dcC5PJRGxsLL169Sowt0tlUKb50zR0h5eg+YVDSDS6E6sw/PE0ZF8k76FYCC78x8Xw2+Pod/+MVrMZlma3Y+n4OLgVHFlWt/9P3LarC3BwxgH6dW6G4bdPAUgIaE27m+6EQ/+Ht+k8/fr0AoPKr2H+PLDOaFCvhjcR/foVmg63z14FwNzpCXxueIV2eToe376Mg261aKQ/TZ8GbmjN+oGmoe15Eqw3Ni8FrSYyazeowXhpGqTR6JZ+7NLt5cdNqhrq6Z71efKGeugSd+P2++PqblSDB6ttwdxvFABD86XlljOp3PXlBnae17M8M5THax/nxeXZJGQG0NhTNYDOi+qJ4dhSmupUQPT8bZ1pWVtN1KlfvApOOo43qp0PlhhrvtMTMW5XpT2dwnVYuqnlT17yvbzN9sCUhe5wLFrDPs7nRdPQxW+DjLNoDXqru+ez+3H7pg9anU6Y75lb6PtcmFL/nFrMuE1RpdnBNz2Dft9vsO83uobm2vNb2nSHlqDbqUr5qmcepX+rULRabe3ri8zj2QO4zboZjD6Y+32Ifu1c9GZ1fhp5nKV+EZ9X++seW4FhznC06DsxD/wU3cFF6HapdPjmJtGvbpajNOrsAYzbVYl+v6Z+aPV6FH7QswfQZZ1Dq9ul6Be+GIcu5SRaRFf1XNOw7PuTFQcvcF3/ewo9j/qFYzFkxeGffYp6t4+3lzrY5eXgNlWdN3O7R9DlZqDf+QMxGf/S6t43wGJGd2w5Wp1O4OEYbFJ3YCFu29UHvk7KJsKunw4+qvpYv/Fz2Ada5HVYrnsWt+8HUTtjF6G9b0S/6QuwxvTXGfdi7vdM0fml4DnUb/oaw0416nbo4YOYe/8PrdU9xR6jWJqG4ZcH0B9chFajKZZmg7B0egLcSn+AR93RZbhtV3PZBWYcpn+dDLSWQ0r9u2irwSkJlwVAwcHBGAyGAiUzSUlJBUpwbLy8vJgxYwZffPEFiYmJhIWF8eWXX+Ln50dwsPrwhYaGXtExATw8PPDwKHgBNBqN1+wifi2PXR6UKH8WC6z6EGq3U3XlV2rXLzBvuHpcra5Tbyzjlq9gwEcF9zFlw37VaF6XtBdD0l4M2efh5kvanJmyYOlr6rHBHcy5GDd/CadVL6hE/1Y0r14b3DzR5WVjzEyAQOv8Q0l77IfRZyShL+x9yMsFa88qQ9enMXh6s31/EnkWjc3u7WmUdxq3I/9Aq8GQngQmx5e6Xtom9UCnV73Rzu5HbzTyXJ8moFNTQ/RqFgInN8F3gyA3HTwCICcF/eGl6DUTuDuXbLaOCGJ8v6bM+HMZ9+6fQOODB/jAEs5LXs/iqZnA6I1Hi0FgDYCah/vTNjLIEcAkq+J+/GtB6mkMSbsx2PJ9wVGtZTiz2bG8KIvGwtZvoc39cOtnatmGL2H9Z472Vv0/hPYjYPUHYMpAd/Qf9BnxV9zeotS+hyc2QdoZ8AzArWl/yE2Ffb9hOL4SQ8+X//vxC3NqvdNTt23fQGTHAps55VHTIPZlyEmDnDTcfrpPLTd4gDkH/ekt6HWWQm8IAPW5XfwiWEzo9sxH3+89OGVt6G/9jLmt+Qha362qkI7940jfgT+hce+Cxzx3BGb2UZ/TYQshsmvBbUzZ8N1ASD0DI1dDaDTsXwgLHqKn3gNdHTOGjo84VymlnIIdqt2nTrNgXPcpDPrM+bg7vlPnzS8MQ5+3IS8bDvyF7ux+jAf+gN3z4cBfENYKhseq90XT1OcOQKdHZ87FuOsH6PasWnZkKQD6xn3R17se/MLQpcVjjFsN+/+0v7R+3+/ob56oXnPjl9D0Fqhb8PyB9Ry6ucHWGWqBbyi69ATc/nwKardV78fV2PcnHFyksnJ2H4YV+zBkJkP/D67ueEXRNFj9oXocUAdSTuL27wRofgsY1XQwpfVdvJJjuKwXmLu7OzExMQWKvWJjY+nSpZi7AFQGa9eujcFgYM6cOQwYMAC9XmWlc+fOBY65ZMmSyx5TuMDJ9bDsbZhzL6QU3y26UAcc1U724Keh9Qd2x1zITin8NfOywS8MbrQGODt+hLwc5+3WToGUOPCvDX3fU8s2fgVoaDWbk+0epH5sq0eqdbYLc26G+kG3SU+kUBfjQLOA0Rt8VXC+/pga6Ti1Tk+1zeFYsJjB2paAwHoQmm/GaVtbi7MHwGImyBTPxAvP0Wv/q7BlJnx/u7qoRHaDp7dCQF0wZcARx0Upv2GBu1nm8zId9GqQvwb6M8ys+7daWbMZhKnXbuEWxyv9mqLLy1E/bJoGidagr6X1zt9aJWJPn83JTU492ci6qIYL+HOMyuuFE46GxNu+h1NbYOfPsOh59R7b2tP88xacWAt7f3Mca+/vhb/XNpnn4dcnYOYASNjpWG7KVnkAyE6Fhc/Dt4NK1oDdxtbjq0EvMHpCvRvU81ObVLBxJSwWMOcVXJ6RDLMGqiEWAE6sUf87WBta756ntinOvj/g2AoV8LR90LF80FTwqam+G9ZqtUKtnwrnrN37zTmqF6QtHb3eAK/qcO4Q7LEOPXJwsWPf/X858mXKUu95Xg788pD6nAIsekFtc2ozfNNfnXuAbd+pzgVocNw6VMqxlQC4WXIw/P08fH2T+o6mqwlsWT0ZLCaobq2C3jnHucOC2QSrrDdJXUer8+ZVDTpaq7PmP6qCH4D4HbD0DfX40BL1+TH6QK+31LJNM1S6c9LguPX9aNgH9HoV2ACsmwJntgI6qNFEpW3Z/8E3/dS6GX1gyauwZRZ8dzv89KCjRyGo85Z8ENx94YkNUN/6O2H7HUw5BTP6wvZ8nX0sloK/bTamLFisOgvRaRT0etP6Pv2k1oH6Tl7JUB5FOb5K/fYaPGDYX6okLiMJVrz734/9H7i0G/zYsWP5+uuvmTFjBvv27WPMmDHExcUxcuRIQFVNPfDAA/btDx48yPfff8+hQ4fYuHEjd999N7t37+add96xb/PMM8+wZMkS3n33Xfbv38+7777L0qVLGT16dFlnT1zORWudiSkTYl+9sn0tFji6Qj2+92cY8j088i/c+xPUaKou9Nt/VD+yp7c4LkJHlqn/9XqoHz2/MNVj69ASx7E1Tf3gggqSWg5WPzqoi6SlQb672EsDoKR9ajtb3XZRF9HzqiiYwHr2u1bb5Jo1mnVXd9OZ51QgYQsgajSB/MXd178Abl7qQnT+mPrxP7keds6FP56BnFSI6Ar3zlXF882sP8T5gwab/X/Bz8Mw5GWhRV7Huaaqgsz3hPVmIjRavb7eDV8tnc4Z/8AHjWD2naqEKus8oIOWqocmiXsdP5y2AA4gJwWSrfnJTlX775mvLuqrPoTVH4ElD2xtSH5/Ev4crR53fhJeOAYh0Wqgwe/vUO+1u7VqYl8xAdDBJTC1E2z/Ho6vwu2b3rQ8ORPDtwPg/0JgcgtY9CJM66Luxo8uUxfA/MFacY4uV/9tgU9glPpsWPLg+Oqi90tLUIFc/gDs41bwXhQsGAkn1jm23T5bXfT/fll9fs5sV8u7PA3hbdTFcmvBcdHscjNh8Xj1uOszcMsn8OhyGLoAWtwJEdabRNsF/FKp8bDyffW4ZjP1f9v3KjgAdcHvpKpXWfmBCjjjrKVURh/ITIa4tSrAfSccprRT42jF7wCvQPCsBom7VRD03W1wYjX8+jic3Kg+Fza2oSWs/+MDYtDcPFXp7MLn4MNGMOsWx3sx8GMVLFjynI+z6xd1k+NTE2LyBYOdHlffd82sSn+7jlbL109VQcl8a8DZfrgqhfQKhNRTcPBv9ftiMakLfLAaw4tmt1rfV2vgFtHVUVq0dZba17MaoKmhMP54Wt2k7P0VXf7P9Mav1P9Wd6tArdkg9dwWZK6fpt7fRS+oGwtNg7n3w/sN4LS1cb6mqeByz6+w+GV1I+YXDj1fgc5PqdKZnBQVVOXlwJc3wMctHb/Vhbl4UvVELEr8TnWDA9D2AageAX2tgc++P1TQ7SIuDYCGDBnC5MmTefPNN2ndujUrV65k4cKFREREABAfH+80JpDZbObDDz+kVatW9OrVi+zsbNauXUtkZKR9my5dujBnzhy++eYbWrZsycyZM5k7dy4dOxZetChcKD1fcLB7XvEXiksl7lY/qO6+qvqs6UCoFaOCiQ5qWAU2fqEusF/1hNmD1Zc//4VKb3CUWOS/a0o+CBdPqLuVJv3B3cfxIwZoDXs5tr00AEpQ4+RQK0b9z0lVF55L2QMgdXeakZPHrtOqxKpD/RCI6qbWH13uCCBqNFY/fqEt1Q9v9QioaZ3SIGmP44ewQS/1Q1b/RhUQulsbhNvycOBvx11h1kXY9LX6YbfkQYu70D3wO/79JmAy5KsmC22hiv+DrRNSLnhU/VAeXqqmyAAVzNVoAp4B6iJwVrVVcJQAWasnTm5Q78nsu1QJidH6OssnqgsqwJ3TVWCTtFeVDkR0hZsmgKe/o0TOZH1f7/jacdzUMwXf64Td8OMQVRoX3Bga90NnySMq+V/0J60X6JSTKh8pJ1U1mtFb3XGvnuR8rL2/q2qR/LJTHKUm+atybXfohwpp3HloqSqJ+rAJfNNXnQOAvb+qi3JOqiqZnNnfceyD1iA9L0sNtKiZVVqr1YF2D6t1O350BFOX2vC5o1TzOusFKbyNI52R16n/J4r4Hq76UJ2L2u1ViRGoQFGzqO9BQC1VGuURoM79n2NUGms0gWhrC6/VH1mXW1RJ0jHrTcygaeoiDLB5usq/m5f6HM0aqEp/bI3cT25Unx9rKd6u2veR9/hGVRoT3kYd+9gKdWNQpxNEdYfuL6h9t8123JTYPmsdH7NXwwDgHajS4hcGg7+DXhOg0xOO85N9EYIaqMDT6Kku6qAClzWT1eNGfRzHq9tJBVk2zW5Vf7bedoH1YdR6uPsHdfMW2sJ+TvSbp6ttUk45SnraP6L+20q7T29RwenOn9TznFTY8IW6ITjwl3r+y0Pqc7rsHfj6Rvj5QUdJYu+31G+EXu+4gdkxRwV8CTshLR7mjShYKmmxwLqpKpD98gb4dZRzqbvZBCveg696qHPtUxO6WdvaNuylzvmoddekvVFJubwR9KhRoxg1alSh62bOnOn0vGnTpmzbVkykaXXnnXdy552Ft/gX5UiatXrI2v6AhS+o+n19CeJyWyAT0dXe+Niu5RCIfUMFGbZAI26tCrJsd6u2O/WWd8Oaj+HQYjWKr0+QI5CIvA48rD1rWt+r7sB9aqCFx8BO6za24vXz1lnKE1V3dep2VhfevCxITyAvIJL9CWnUq+GDt7sbXFDbrz7vT9vcPLbGXcBs0ahVzYs6gd4qffv/dJRYgbqQeAfCyHyjpddsru6+9v+lqh70bip48Awo+J7Vaqfu9tLOqIEazx1Rd5q2Yvbmt8Ggz1Vg6OnPkRq9aZLwq1oX0sL6P1oFJaAClNw09f4B1GyqAtCwVqqkIn6Hemwr8WlwowqYTm5U5+XkepXOB35XF+cdP6qLV8R1Ki0pp2DJK+oO+/avwGD9uYrsqsab2T1PlTo0vhnqdFQB0L4/HFUYNivfU8dt2BsGfwtunuTtmEvC8m8Ia9cfQ9P+6rwdWKS6M183VpWS/TZKXTCiukOdDqpU6ydr03GDOzQdoB4fW6WOH9QQAvLNP9awj7rIHFqighJb+xRzHsx72PlisX4qtBuuLjygqqeSD6nP7dbvVHAZl680yHbHHWENWpoNUlV3yQdVNYstALfJzVDVLKAu7pe0AVPHspYAndyoLl75v1d5ObDLWh11wzg1JET1SEfgb0uHrQpp5XsqWAD1vkd1VwGHraqwfk9VmnlgkQoQGt+s3pctM9W5qNMR7pwBM262t5Xjhhdh2UQVDO3/Eyx5aL6hZBmD1Hnr+rT6O39UVcGd3go9Xlbve0Rnx2dkyyxoNcQa6OmcS1VtOj2u/mxuel2VVFjyoPkgiOzu+Dx2eUp9rhN3q1JbW55t9Ab1WbEFHE0HqJuJAZPVe3TTBPAPA//+6oYL1G/jR83Rn95EgO8xDIt/UJ+xyG6Omx7/MHUzlLBTVWVlJNnbBbJ+qqPRts6gztOXPeC8tXq+dgd1fmu1dZ6ypdXdsOoDNZ2LrSRQZ1Df1RX/cwSpeTnww2DH7zCo38ejy1UwXrudqjK0fU6bDoT+H4Fvvl5rra1V+C7s4u/yqTBEJaNZ8Ms6WfRdaH62EqAuT6k77qQ96ge8JI7aqrJuKLjOw08VTwOEt1UXU1DVQmiq+N7P2ig+pJm6SFvyHCM6WwOgJXmtuJhpDQ4ir4M7v1HVSfnHBylQAmQNgEJb2l/jq4Vr6fjOPwz4dDWPfbdFzYllnSbhz1NefLXymL36q6Ntbilbb5mTGxylSrbSl/xqWjvc7/pF/a/bufDgB6ztEdSAoayboho/mnNVYHXTG85BBnC0Rm807yAVgIQ0d7wPoH6IH12uAgHNOvq0rVokzDps4pltKqjMsLbJaHO/+n9oibpzBLjtCwhvDf0+sOZPBzdYxwbrNEo1ZH/wd1W6kN+AydDnHUcjaVvp1obP1d3oxLqqgWfiXkeVX6831Z2+TofW/A62RI1SPQCD6qv9b/tcVXl6+Kof5xaDVd7+HKMuzrbqH4DfnnBUC1xa/WUT1V3d3aacdASNoAKU7BRV7TFqgyoxOX8UtnxjbU+jg+tfdLwPe+arQEEzq/fI9v6CI2jx9Icm1oDMFkRlnsMz1zrO0+YZ6uJcPQpa3EWhajRVbXhMmaok49MY+P5O1Q7k4GJV8uEXrvKp0znatoBzw2VbFZJNo5sh6nqVT1Bt3m77UpW+3vWNI2A1uMH989S5vX+eCibvmK5KfvzCVSlMqDUQt46artXuUHAsncB6qorp7tmOzy042kptnqFKggDqXV/ws1UYNw8YMElVG9bv6fQ9wSdYVb93e1YFID411I1Zfq3uUevq3+gYM6jpAFV6Wdjr+4XYP9Mdjn2K/tDf6rvW5/+ct2t0s/pva3PVfoQKxLMvqs9dQB1VxakzOIKf3m/DiFh4aKF6nP/9C26obpQ0s2pGULsD3P6lWrfyA1VdC6qJwNHlqmpzwEfw0N/qs5V6Gv59C769VX3/PQPU78rg75yDn3JCAiBRqvSLnqPn/vHo10y6/Ma2ouiaTR0XcltpQT4F5sAyZTu+iEX1HrvxdVWaNDwW+kxUpUzWhpanqndg4qJ9jmkjbHeAG7+AtAQ06532Wwfr8OxPOxyvH317wTvr/AGQxWJvDHxAF8GBDFX1tG3vAfsM5asOJbPyUDLpZw4BcEIL4etVR/lnfxIAHWwBUFB9VVVhzlU/ZlB8AGQLQvIXvRcmZhh4+Ksi/O4vqKL3JzaoKpFLStJMbr7kjViu3kdbSVib++GRZepHNbgBtL7PsUOINQCydWXe/5ejR1y1uuoiCCogspjUXXLjvmqZh686V4+vdVT/6Q3qbtJ20cvP0x86P+H4UbVdjM8fVT+8OSnw8zD7CNs0u9XxXpWETqfaKdjapSx+2XGRsV1g5g1Xn0VbMH7pZ9HdWwVB4NwY2BYwRXVXd/O2O+FFL6r/totyZDf1GchOgaXWccoa3eyozgHnwKO19XO86xc4tQW3aR3ptedZ9CvfhTUqYKD7c84X7/z0eseF+9+3VbXF4VhVKmMLqloOdtwA2NqggPMF3zsQOliraTwDVMmLm7uqmvbwVxfEoi6GfqHQ7iFH6UXdjurz+ehy9X7WsTZlsN4UaLXbF36cwjS9RVXDpCc42gL9ly7k+bl5qOD5yc0qrW6XTJFSp4MKdu/6puTHtAZs3rnWhu2933YOfqHg9731fdD9ecfzPv+nPk9931Xvfa+31A1ncVrdbX2gg37vqfZhre8HNPjrOVX9aGs83muC+o5GdFbf3Vs+VTdvbl7qszpqvfrMlNPRwSUAEqVn1y8YtqmGh/rVkwpOEXEpWwDkF6raZoBzjyEgMTWbbu8tY9TsfD1TTm5QxdG+oar0ojB6PYS24HSaiReXnOVwbfsoM7yxpyZfrDjKnI3WO/iWQ9Rd6bnDWGYOQKeZOWwJ56QWwj/7k/h+/Ymi81BdtVcjJ1WVbOSmYTF4MmReMoezVADUo5aFWQ93YFiXSADeW7gH3yzV6y3RLZy0nDz2xatu7h3rBanj6XRQ/wbH6wTUdQQh+dlKXWwaXiYACmkGL8WpH+qe4y8fFPiFOd+h6g2q2NwWLF03xtEzy1ZN1uAmVWqUnqjaIoA6v96BjvOsN6rAND+vao4g6kpVq6MCgwY3qS7yzW9XQZatt1f+i0JJ2dqCgAqO0VQpy30/q4vJyQ2q0fS5w+oO21Y6lp+tKiR/I/sjlwRM7a1t1izWqgDbRVmvd7RRs5WWNuoDjfupfTo94aiCBYi6QX0nss7DjD7osi+ix4xh1fuqeqRaXUcbj6JEdnM8tgWy/7ypqogh38UR9Tno8JhqC2P7Hth0fUa9VzdNcARcN74GL55QF+QrEVTfUWJbp4PTKq12h0J2KIKbu7oBAPVeG30cpWalJai+czVofjUaFV06W5g6HdCs3ylLo76OEqz8wtuCt3X6mhpNVYAUfYcKhDqNctwYdHgEXjyuqggvp9Xd6n3pbW1TBeqxZzV1Q/P9Harhtm8otMk3mpi7t2oP9cCvMD5elZZfMkJ2eSMBkLh6FgvMuU9VOSz/H/wxGoBcgzc6c46jx0lRbF3EfUNVA19wDoAyz/Ph4v2cupDFwl0JnE5KVg39/rHeDduK4ouw9kgyAz9dzdzNJ3ngQBdydB6kat6szVNB0+wNJ1Tpjncg3P4lGjr051TJzHq39jzZQ/XiePuvfRxMVL3INE3jpQW7+WiXgQuZuWD0wuIbCkD276qB33JjNy5ma2jW5Xc1NnJ9qIlXTj3GYx5LSEk8hpE8cjDy7B2OUoOafh5EBuVrm5F/0Djb+3Mpv1BVbQHqYljE4I9OdLrSuyOrHgFDZqs7P1uvFzd3ddcIjnFPbOm3Nbjt8pRj+9LSc7yqOmk/QpUy2KrFmgwovBSpJNo97AjsQJWgBEap6hXfEEe1Qq2Ywi9utjv0kxtUr6icdDhlHcXbVmUW3MDxvhh9HNWU4FxC4WEtTdHrVZB38zvO59HgBi2t1VsWE5bwtmyrOxzNlq7uzxdsL3epNver7YYthAf/UG3Msi+qKuKw1s4Bs85aQtD7rYLH8aqu3qN2DzkvL0n7vuLYSoAADB5oV3pe2z3k6GHY7JbCbyrKC52OvFs+Y3/oIMwDPyv8O6vXOz7nMQ+qbQxuqpH6zROd97nc1B42Hn7q3OUvKcp/MxBnLX3v+oxqBF5E2isCCYDE1btwTF3gzmxTPXhy07DU6cTqhuPVUPj7/1SN6QqTk+4Y+8MvxFGSYwuADi6G96JosEP1+DGSh8d3/WH+I45eMc0HkZJlwmIp2N4odm8iQ6dv5HxGLlHBPpw11KB/9lvcljuBZhFheBkNHExMZ9PxC6RkmRixyocpeY6eXu17383YXo3o3qgGOXkWnvt5B3lmC4v3JDJv6xmOp+sY/+te8swWDuWqOzDPjNOY0TMhpS++Hm5c19ra/iAtEXb+hFvSLsa6/UJjnSp5yvapQ7+W4TQPV6ONd6wX5DxieVS+O+WiAiCdzlEK1KiPa354Gt/s6Aljk7+kABznt+crqvqs5xUOe3ClDG5wxwy47xdHj6WroTeoYMPNU91Z2+6Io7qr4v3mt6vntoDvUtXqqvOjWdR34cQaFUxUq+tcenPdWFWS1u4hR689UKUGtmrXBjdePoBpO0xVP9SKwXzPz8QFXU/eyPUqoLn0HBXGw1edo8iu6j20dVeG0qsu+i8Caqv2QGAtiXQvfvtL+Yer98Hg7uhNVZ7VbKamJvH0L3qb3m+p71SHx4repjTEPKQ6QYBq52QrTavAJAASVy9dtVvBq7q6WNdqh3nQl6R51cFiK9bPP+6G077W0h+jj7rjsF3gkw+qRpfWrsbDDQtp53mKYYa/CU7br4phu78AozawTIuh7VuxvPb77gKHn/LvIcwWjQEtw1j0TDfmP94Vz/BmVKsbzfQH23Nra/UjOnPtMR7/fgtL9yXxifkONvn2JDWiN43b90av1/HBnS3x93Rj56kUPl9xhHcW7rO/Ruy+JO76Yh27s6rbl/1q7sIJLZS3BjWnWkhda14T7IPFeZjTedJLVYf4hjdCp9Pxv9tbcl2DYB7plu+CCKqdhO0O99Kqrvw6PqaKwgsrIneV8LbObZZsAZCHryrt+K8lASVhcFPdba+k2qEwdTvCc4dUqVJ+3oGqTceLxwv2PMvPVgq08j1HY/V6PZyD1ahu6ji9CilN6fmKKonp8uTl0xrcAJ47qNpT2fLtU6Pw0ZVLIqqbGgenbpeCQa0r6HSO0ZLrXEH1V379P1TjSdWOufy2FYG7T9l8pwxuqqS3ZnO4+X+F9ySsYFzeDV5UYBnWACi4keqpA9YujduxtLgbw8YvHCMEX8re/sdat1+trrpzzcuCC8fJObISD8Cg05gZ9B2atddU6vUT8O88jJw8M6/PXInZojF7Qxx3t69LdC31g3/kbDo7TqVg0Ot445bmeBoNtKgdwJ9POdo33NcxgjmbTrJwl0qHj7uBOY9eR4va+Xq2ADX9PRnfvykvztvFB0tUD7UQPw/aBGTy9ykD2+Iu0t1QEwygoeNI45E8F96I29rUhsPWvKWecRqfpo1ZNeA0BKl5iVrUDuD7EUWMU9X/I9VVNn9X1UvZxhUpT3Q6dcH8xzq6bI1CGnBXJMXdgXtVL3odqMB0508quLf1ciyq92Jh6veEUWtLlEzAkVZzCQdxvJxeE0rnOKWl56uq3UuXZ65uf72hfFd9lWe12l7ZZ7GckxIgcfVsJUA+hfTosF7cyTqvukIX2NcaAFnbyaA3ONqvHIrFI+MMeZqeXL0nvud24afLYrulPn/pbwBgxurjxJ1XA+FpGkxctM/eW2vBVtXAuHvDYIJ9C5/TqEXtAFrZJvLUwZR729KiduElBYPb1aFL/SD78+d6N6RPbY3rGqhlIS1vBEDXdigv3D+QJ3ta8+FnzdvZ/aqRtOGStAReUuJTmDrtVU+Oouray7OWd6tSiKLax1QV/uGqPY3ts47OuXpTXJmg+mquKp+gy28rRDEkABJXzzbvUGEBkNFbjUEBaoC+S1kHQTxt9mfy0oP8b9F+Trqp7TXrgGG7tHoktHzCvsvrpgdZtCeJQ4lpTPlXHXNsr0a4G/SsOXyO5QfPYrFo/LpdBUC3tS2iN4bV6JsaEeTjzv/d1oIeTWoWuZ2tmirY151uDYO5pWUYeh18dX8bFj3TjXsG3wujd6vxS/KzX/Cs6t2gxtiwsU2eWlkF1IKntqqBDqu6oPow7E9VWtr6Xrl4C1EOSBWYuHq2KjDfIoKH4IZqMK7kg2q01/ysJUCLT8DkIyqYMRh8eN4IOutYQNv1zRna9zkwnOOsZxQ7/mkAB8/S66AaWK9VnWo82aMB6Tl5fLnyKK8s2M19nepy6kIWvh5u9G4WUmzyezSpyZZXexW7jU3dIG82vHwTeh3k5akh4d0MepqGWasbqtUpuJN3oOrubeveHNlVBYbWGeUrfQAEapA4oQQ3hCc3uToVQggrKQESV6+4KjBwNIJNLqwESAVASVo16gZ606ZuNQ5rziOi5tXpgpuHNwz8mBq9RtsHCTQadNSr4cP/DYpGr9fxxA0NqFXNi9MXs3jvbxU89Y0OxdNYwm6fJWTQ65x7aV2OTmef6R1Qg8VF36EacvuFO0rIhBBClDkpARJXzzbFQVElQEHWcV6KCYASterc2LQm93Wsy6MfOaYLMGs66sXc6LTLj4904kJmLoHe7uj1jkAkwNvIwme68VHsQb5ddxyLBne1KyfBhV+IGjTM6KMGKTMYrfOduRU9Iq8QQohrTn6BxdWzlwAVVQVmKwEqZH4vazf4JKrRtoYvDWr60bBJS3KPGnDXmdlPJF2aOVcRGfS6Ihs1B3gZeeOW5tzfqS7n0nMdU0q4mq0dUN2OjjFcCqsuE0IIUaakCkxcPVsJ0OWqwC4ch7xc53X2KrDq1AtWA789ekMjjmpqfJ7TAW3xcr/yKqwGNf0c00mUB7aebfVvLH47IYQQZUoCIHF1cjMdIzkXN7Ghu6+aqPPCMcdyU7Z9gs8krRr1aqgAKCaiOnv9umLSDLi3LmLG6oqm+/Nwz9zyNUihEEIICYDEVbKV/hg81MSQhdHpHCUg+avBrNVfOZqRXKM/IX6OMW56PP4xq+/cyvU9br4WqS57Hr5qqohLZ4cWQgjhUhIAiauTvwF0cT2jCusJZg2AzhJAVLCvU4Pm6r6e9GgReWW9rYQQQogrJAGQKNq5I5B+tvB1l+sCbxNkKwHKFwDl6wJvq/4SQgghypIEQKJwaYkwrQt8faNqs3Opyw2CaFNYFVghDaCFEEKIsiQBkChc0l7Iy4aLJ2D79wXX20qGLjfSb/4AKPO8KjnapGbVPqUFU6+GTEoohBCi7EkAVBWYsiHl1JXtk3ra8Xj15ILd2O1d4C9TAhRYX83cnJMKUzvBN/0g+SAJBDMjry9RUgIkhBDCBSQAqgp+GwWTW8LxNQXXnd4Kh5cWXJ6SLwBKOQk7fnReX9IqMKMn3P+LagydngjnDmHxDWVIzsucIZgoaQMkhBDCBSQAquyyLsDe39RYPGs/dV5nNsF3g2D2XY6Z3W1SrSVGfmpgQlZ9qLa3Sb/MIIj5hbeBx1bCdWMgqjuHbv6BE1oowb4e+HsarypbQgghxH8hAVBld2ARWNTs5Rz8W43KbJO4G7JTQLMUrCKzlQBdN0ZVYV08Afv/dKwvaQmQjdELbnoDHvyD/XlqegjpASaEEMJVJACq7Pb+pv7rDIAGm2c41p3c6HhcoATIGgAFN4B2D6nHG792rL/cPGBF0DSNP3fGA1BfAiAhhBAuIgFQZZadCkf+VY97vqL+b/0WTFnq8ckNjm0zLwmAbCVA/rUh5iEVQJ1YDYl7VINo61QWJakCS0zN5uT5TABmrj1O7N5EjAYd93aIuMqMCSGEEP+NzAZfmR1cDOZc1QC56zOw+RtIiYPd86DN/ZeUAOUb8DA7BXLT1OOAWuDuA00HqNKkjV/B9S+odToDeFUvNgknz2fS75NVpGXn0apONfaeSQFgfL+mtKgdUJq5FUIIIUpMSoAqs72/qv9NbwG9AdoPV883fqlKeFJOOrbNHwDZSn88q6ngB6D9I+r/zrlw9oB67FMD9M4foXMZuaxL1HE+IxeLReO5n3eQlq3aIO04eRGTWaNfi1Ae7BJZatkUQgghrpSUAFVWZpOje3uzW9T/tg/A8okQvwPWT3XePuOc47Gt/U9AbceyyOugRlM4uw++v10tu2QW+OPJGdw/fQOnLhiI/XQtPZvUZMOx83i7G/hueAe2nLhAYmoOo29qKHN9CSGEcCkJgCqrjLNqJGe9G4S0UMu8AyH6Dtg+2xEAufup6i6nEiBrjzD/Wo5lOh0MnAzzHlHVaMDOjGqcO5BEWIAnBxLSePOPvZzLyEWHxrmMXH7eoo7zcr+mxEQEEhMReI0zLYQQQpSMBECVlXW+LXxqOldTdXhEBUCaRT1v2Av2zHduBG0vAcoXAAGW2h2Z1mo+S5cupJ1uP7HJMRz/ZpPTNs3D/bgz9ALxPg34evVxbmwawn0d65Z27oQQQoj/RAKgyiq9iHF6wttArXZwerN63qS/CoDylQCZL57CAM4lQMBrv+/m+/VxQAPqtu5Ody8jmbsTyDaZiarhS5s61Xi6Rz1W/buE+3s34umbGuNtNEh1lxBCiHJHAqDKKj1R/fcNKbiuw6OwYDP4hUGttmqZtQ3Q8gNJuG/fSRc9HM6pRgPrLj9tPsn36+PQ6eCd21pwd/s66HQ63rw12unQJpNjtGhfD/l4CSGEKJ/kClVZ2UqA/AoJgFrcCWnxEN7aMY6PKQMtN4P3Fx/gU1Qw9MqyC+QcWkPX+sF8teooAGNvasQ9HaRKSwghRMUmAVBllW5tA1RYCZDeANeNVo81DQweYM5h055D7DmTQriHCoCSCOZo3EW2xV0E4MYmNXmiR4OCxxNCCCEqGAmAKouUU7BlFrQfoUp9iqsCy0+nU6VAqaf4Y90OquOOp05VY/3w7G0sPZTCP/vUsSYNbo1eL+15hBBCVHwSAFUW66fBuilq4tObXs/XCPoyARCATxCknuLkqZPUNlhHdvYOJjSoGvcHVeP+TjJlhRBCiMpFRoKuqFJOQ3ohY/ckH1T/S1oCBPZ2QMG6VG6Nsi67pAu8EEIIUZlIAFQRZV2Az6+D6b1UGx5wdGM/f0wtS7MFQJefrd3kqQYoDCKVvrVz1UL/2sXsIYQQQlRsEgBVRCfWQtZ5uHBMBUPgKPE5fxRyUiHPOuN7CUqATmR7AxDlnUV49iG1sGbT0k61EEIIUW5IAFQRHV/jeJwWr/7b2vzkZUH8TvXYwx/cvS97uO3nVFOwFtVy0Z3ZphbWiimt1AohhBDljgRAFdGJ1Y7HaQlgylKlPjZx69T/S6q/dp9OYdBna1h+IMm+7GJmLpvPGgCo55YMSfvUCtsAiUIIIUQlJAFQRZOdAgm7HM/TEhylPzb2AMi5+mva8iNsP3mRsT/t4HyGauuzaHcCSRY/ALwStgCaav/jF3qtciCEEEK4nARAFYXJ2qYnboNjIlNQVWD5Z3IHOGmdoDRfAJSVa+bf/SpQOp+Ry5t/7CEt28ScTSc5p/mrjTSz+l+rzbXIgRBCCFFulDgA+vfff2nWrBmpqakF1qWkpNC8eXNWrVpVqokTgMUMvz0JE+vA1u+cq7/AWgKU6LwsN039zxcALT+QRJbJTHVvI3od/Lr9DNe/v5wdJy+Spq/mvL+0/xFCCFHJlTgAmjx5Mo888gj+/v4F1gUEBPDYY48xadKkUk1clWexwO9Pw7bvwGKCv56FPQvUulrt1P+0eEcVmMHDef98bYD+2qUaS9/Vrg7Dr1OD/ZzPyCUq2Id3hvZw3k8CICGEEJVciUeC3rFjB++++26R63v37s0HH3xQKokSVv+8Adu/B50eajaDxN1wMU6ta3EnnN7s3AYovA2cXO/Y31oClG1yVH/1axFG4xA/TGaNsABPhnWNxMPNAG5e1q7zOghrXWZZFEIIIVyhxCVAiYmJGI3GIte7ublx9uzZIteLq7D1O/V/4CfwwG/gF6aeB9SB2h3U4/xVYHU6APnm6rLOBL/8wFkyc83UquZFq9oBeLkbeOOW5jx2fX0V/IBjVvgajcGzYCmfEEIIUZmUOACqVasWu3btKnL9zp07CQsLK5VECVSj56zz6nHTAeATDHdMB+9giHnQ0UsrPV8AVK0u+OebwsI3hIuZuXy16igAfaND0emKmMzUJ0j9D5fu70IIISq/EgdA/fr147XXXiM7O7vAuqysLF5//XUGDBhQqomr0mwDHLp5gWc19TiyKzx/GLo/b23fo1OTnybtVet9a0JglP0Qu1M96f/JaracuIC7m54h7esU/Xq2wKlO+1LPihBCCFHelLgN0CuvvML8+fNp1KgRTz75JI0bN0an07Fv3z4+++wzzGYz48ePv5ZprVpSrQGQfxjkL7WxPTYYVbVVRpKa/gLAxxoAHV+FpjNwz/eHSMvViAzyZsq9bWkY4lf06934mmpD1Orea5MfIYQQohwpcQlQSEgIa9euJTo6mnHjxnHbbbcxaNAgXn75ZaKjo1mzZg0hISWYefwSU6dOJSoqCk9PT2JiYi7blX727Nm0atUKb29vwsLCeOihhzh37px9/cyZM9HpdAX+Ciu5KtdsJUB+4UVvc+lghb41IbAeACn6aqTlarStW40/nrqO6FoBxb9ejcbQ/Tkwev6HRAshhBAVwxUNhBgREcHChQtJTk5mw4YNrF+/nuTkZBYuXEhkZOQVv/jcuXMZPXo048ePZ9u2bXTr1o2+ffsSFxdX6ParV6/mgQceYPjw4ezZs4eff/6ZTZs2MWLECKft/P39iY+Pd/rz9KxgF/bUM+q/fzHtqvwuWedbE4IaAnDcFIC7Qc97d7bCz7PoxutCCCFEVVTiKjCz2cyePXto2LAh1atXp317R1uRzMxMDh8+THR0NHp9yWOqSZMmMXz4cHsAM3nyZBYvXsy0adOYOHFige3Xr19PZGQkTz/9NABRUVE89thjvPfee07b6XQ6QkMr+FQO9hKgYvKRf53RG83ow3p9Ww7qB7EoN5pRPevToKbvtU2nEEIIUQGVOAD67rvvmDJlChs2bCiwzsPDg4cffpjRo0dz//33l+h4ubm5bNmyhZdeeslpee/evVm7dm2h+3Tp0oXx48ezcOFC+vbtS1JSEr/88gv9+/d32i49PZ2IiAjMZjOtW7fmrbfeok2boqd3yMnJIScnx/7cNtq1yWTCZDKVKD8lZTve5Y5rSDmNHjD7hGApYlu9T02sndjJ9Qzitimr2XMmDRhMvWAfRnSNKPX0X05J81eRSR4rvsqeP5A8VgaVPX9Q+nm8kuPoNE3TSrJht27deOKJJ7j77rsLXf/TTz8xZcoUVq5cWaIXPnPmDLVq1WLNmjV06dLFvvydd95h1qxZHDhwoND9fvnlFx566CGys7PJy8vjlltu4ZdffrGPUbR+/XoOHz5MixYtSE1N5eOPP2bhwoXs2LGDhg0bFnrMN954gwkTJhRY/sMPP+Dt7V2i/JS26w6+RVDGITZFPsmZ6h0K3SYieRmtT34DwG5dQwZkTcCo1+hUQ6NXbQsB7mWZYiGEEMK1MjMzuffee0lJSSl05or8SlwCdODAATp16lTk+vbt27Nv376Sp9Lq0nFpNE0rcqyavXv38vTTT/Paa6/Rp08f4uPjef755xk5ciTTp08HoFOnTk7p7Nq1K23btuXTTz/lk08+KfS448aNY+zYsfbnqamp1KlTh969e1/2DbxSJpOJ2NhYevXqVfzAkkdVj7o21/ejde3CAyDdIQNYA6DTeQF4uOlZ/ExXalXzKtU0X4mS5q8ikzxWfJU9fyB5rAwqe/6g9PNY2HylRSlxAJSRkVHsgdPS0sjMzCzxCwcHB2MwGEhISHBanpSUVGRvsokTJ9K1a1eef/55AFq2bImPjw/dunXj7bffLnQgRr1eT/v27Tl06FCRafHw8MDDw6PAcqPReM0+dMUeW9PUCM+AW/U6UNR21WrbH57VAri/UwSRNcrHKM7X8r0rLySPFV9lzx9IHiuDyp4/KL08XskxStxiuWHDhkW2zQHVQ6uoKqbCuLu7ExMTQ2xsrNPy2NhYpyqx/DIzMws0sjYYVCuYomryNE1j+/btFWuU6sxzavJTAN/iGkE78nRRX42R19e/xgkTQgghKocSB0D33nsvr7zyCjt37iywbseOHbz22mvce++VDaI3duxYvv76a2bMmMG+ffsYM2YMcXFxjBw5ElBVUw888IB9+4EDBzJ//nymTZvG0aNHWbNmDU8//TQdOnQgPFyNlzNhwgQWL17M0aNH2b59O8OHD2f79u32Y1YIti7wPjXArZiGPD7BmK2nsEG9+tTwK1iKJYQQQoiCSlwFNmbMGBYtWkRMTAw33XQTTZo0sY8EvXTpUrp06cKYMWOu6MWHDBnCuXPnePPNN4mPjyc6OpqFCxcSEREBQHx8vNOYQMOGDSMtLY0pU6bw7LPPUq1aNXr27Ok0S/3Fixd59NFHSUhIICAggDZt2rBy5Uo6dCi8HU25ZO8CX3yp1Z6EdAK1aoTpztO5ZdMySJgQQghROZQ4ADIajSxZsoSPPvqIH374gZUrV6JpGo0aNeL//u//GDNmDHv27KF169ZXlIBRo0YxatSoQtfNnDmzwLKnnnqKp556qsjjffTRR3z00UdXlIZyxz4IYjGjQANzNp6ktaUZA9w2E1C/AgV4QgghhItd0UjQRqORF154ge3bt5ORkUFmZibLly/H19eXTp06ERMTc63SWbUUUQKUkmVi7E/b+Xt3Alm5Zn7dfppnTY+zefAmCKhdyIGEEEIIUZgSlwBd6t9//2XGjBnMnz+fiIgI7rjjDr7++uvSTFvVVUQJ0MJd8czfepoF207Tu1kIadl51An0pnPjYmZ5F0IIIUQBVxQAnTp1ipkzZzJjxgwyMjIYPHgwJpOJefPm0axZs2uVxqqniBKgI0npgOolv3hPIgB3t6+LXl/4uElCCCGEKFyJq8D69etHs2bN2Lt3L59++ilnzpzh008/vZZpq7pSrQHQJROhHk3OAKBeDR8ADHodd8VI1ZcQQghxpUpcArRkyRKefvppHn/88Ssa70dchTRrFZifcxXY0bOqBOjtQdGcPJ9JdW93avpXsFnuhRBCiHKgxCVAq1atIi0tjXbt2tGxY0emTJnC2bNnr2XaqiZTNmRdUI/zzfaem2fh5IUsAOrX8GVI+7r0bl7BZ7wXQgghXKTEAVDnzp356quviI+P57HHHmPOnDnUqlULi8VCbGwsaWlp1zKdVUe6dWoQN0/wqm5fHHc+E7NFw8fdQE0Z8FAIIYT4T66oGzyAt7c3Dz/8MKtXr2bXrl08++yz/O9//6NmzZrccsst1yKNVUu2db41z2qQb1JYW/VXVA2fIieLFUIIIUTJXHEAlF/jxo157733OHXqFD/++GNppalqM6lqLozOM7rbG0AH+5Z1ioQQQohK5z8FQDYGg4FBgwbx+++/l8bhqjaTCnRw93FabC8BCva5dA8hhBBCXKFSCYBEKSqiBOjYJV3ghRBCCHH1JAAqb3Iz1X+jt9Pio2dVAFS/hlSBCSGEEP+VBEDljalgAJSSaeJcRi4gVWBCCCFEaZAAqLyxBUDujgDoSLJq/xPi74GPx1VP3yaEEEIIKwmAyht7CZCjDdCxs9IDTAghhChNEgCVN/Y2QI6qrkPWSVClAbQQQghROiQAKm8u6QW2+3QK3647DkCLWgEuSpQQQghRuUgAVN7kGwcoPiWL4bM2kZlrplvDYO6Qmd+FEEKIUiEBUHmTrwRo9JztJKbm0LCmL5/d1xajQU6XEEIIURrkilre5KoSoJQ8IxuOnUeng68fbIe/p9HFCRNCCCEqDwmAyhtrCdDe5DwAWtepRkSQNH4WQgghSpMEQOWNNQDalpADwI1NaroyNUIIIUSlJAFQeWNtBL09Xo383EMCICGEEKLUSQBU3lhLgFLyjIT6e9IszN/FCRJCCCEqHwmAyhvrQIiZeNCjSU10Op2LEySEEEJUPhIAlTOadSqMLNzpKdVfQgghxDUhAVA5o1lLgPL0XnRtEOTi1AghhBCVkwRA5YnFgt6cDUBocCDe7jLzuxBCCHEtSABUnthmggdCgqu7MCFCCCFE5SYBUHlimwYDqCUBkBBCCHHNSADkaol74J+3ICfNPgZQpuZBZA0/FydMCCGEqLykkYmrrXgX9v4G1SOhdjtA9QCLCpbpL4QQQohrRUqAXC3rgvqfnkBOZppahAeRMv+XEEIIcc1IAORq1m7vZF3k7HkVDOXgQbCvuwsTJYQQQlRuEgC5mq3nV+Z5kqwBkNnNW0aAFkIIIa4haQPkarmq4TNZ5zlnvgiAzt3LdekRQgghqgAJgFwtXwnQxcxUAAwevi5MkBBCCFH5SQDkavY2QOdJy0sBwN1LGkALIYQQ15IEQK6kaU4lQBm5qgTIy1vGABJCCCGuJWkE7Up52YAGgJZ9EXNOOgA+vv4uTJQQQghR+UkA5Eq5jrm/dJqFmqheYB5SBSaEEEJcUxIAuZJ16gubcN15AHTuEgAJIYQQ15IEQK6UrwQIIFyXrB4YpRu8EEIIcS1JAORKl5QAhVlLgJASICGEEOKakgDIlS4pAfLTZakHUgIkhBBCXFMSALmSKbPw5Ubvsk2HEEIIUcVIAORKuRmFL5cASAghhLimJABypaJKgNwlABJCCCGuJQmAXClXqsCEEEIIV5AAyJWsvcDMGJyXSwAkhBBCXFMuD4CmTp1KVFQUnp6exMTEsGrVqmK3nz17Nq1atcLb25uwsDAeeughzp0757TNvHnzaNasGR4eHjRr1owFCxZcyyxcPZPq9XXOEOy8XHqBCSGEENeUSwOguXPnMnr0aMaPH8+2bdvo1q0bffv2JS4urtDtV69ezQMPPMDw4cPZs2cPP//8M5s2bWLEiBH2bdatW8eQIUMYOnQoO3bsYOjQoQwePJgNGzaUVbZKztoI+pQlyHm5jAMkhBBCXFMuDYAmTZrE8OHDGTFiBE2bNmXy5MnUqVOHadOmFbr9+vXriYyM5OmnnyYqKorrrruOxx57jM2bN9u3mTx5Mr169WLcuHE0adKEcePGceONNzJ58uQyytUVsDaCPp4X6LxcSoCEEEKIa8plAVBubi5btmyhd+/eTst79+7N2rVrC92nS5cunDp1ioULF6JpGomJifzyyy/079/fvs26desKHLNPnz5FHtOlrI2g47VLAyBpAySEEEJcS26ueuHk5GTMZjMhISFOy0NCQkhISCh0ny5dujB79myGDBlCdnY2eXl53HLLLXz66af2bRISEq7omAA5OTnk5OTYn6empgJgMpkwmUxXnLfi2I5nMpkw5KSjBxK16ljQo8eCpjeSZwEspfu6ZSV//ioryWPFV9nzB5LHyqCy5w9KP49XchyXBUA2Op3O6bmmaQWW2ezdu5enn36a1157jT59+hAfH8/zzz/PyJEjmT59+lUdE2DixIlMmDChwPIlS5bg7X1tSmNiY2PpdOYEIUCG5kWGzhs/LZ08nZGFCxdek9csS7Gxsa5OwjUneaz4Knv+QPJYGVT2/EHp5TEzs4jhZQrhsgAoODgYg8FQoGQmKSmpQAmOzcSJE+natSvPP/88AC1btsTHx4du3brx9ttvExYWRmho6BUdE2DcuHGMHTvW/jw1NZU6derQu3dv/P39rzaLhTKZTMTGxtKrVy88k6dCGmTigdkrCDLTcfPyp1+/fqX6mmUpf/6MRqOrk3NNSB4rvsqeP5A8VgaVPX9Q+nm01eCUhMsCIHd3d2JiYoiNjeW2226zL4+NjeXWW28tdJ/MzEzc3JyTbDCoMXQ0TQOgc+fOxMbGMmbMGPs2S5YsoUuXLkWmxcPDAw8PjwLLjUbjNfvQGY1G9NZG0Fl4oHlWh8wT6Ny9K8UH/Vq+d+WF5LHiq+z5A8ljZVDZ8well8crOYZLq8DGjh3L0KFDadeuHZ07d+bLL78kLi6OkSNHAqpk5vTp03z77bcADBw4kEceeYRp06bZq8BGjx5Nhw4dCA8PB+CZZ56he/fuvPvuu9x666389ttvLF26lNWrV7ssn0WyBkCZmgd4B8J5wChd4IUQQohrzaUB0JAhQzh37hxvvvkm8fHxREdHs3DhQiIiIgCIj493GhNo2LBhpKWlMWXKFJ599lmqVatGz549effdd+3bdOnShTlz5vDKK6/w6quvUr9+febOnUvHjh3LPH+XZe0FlokHem9rTzDpAi+EEEJccy5vBD1q1ChGjRpV6LqZM2cWWPbUU0/x1FNPFXvMO++8kzvvvLM0kndNaaZMdKgqMKOfdTBEmQhVCCGEuOZcPhVGlWavAvPEw886HYaMASSEEEJccxIAuYolD505FwA3T28ModFqeVB9FyZKCCGEqBpcXgVWZeU6xirw8vaDxr3hiY0QKAGQEEIIca1JAOQqJjURqlnT4ePjAzod1Gjs4kQJIYQQVYNUgbmKrf0PngT6FByDSAghhBDXjgRArpLrGASxuo+7ixMjhBBCVC0SALmILt8giIESAAkhhBBlSgIgV8k3DUZ1bwmAhBBCiLIkAZCr5BsFOtCncs/xIoQQQpQ3EgC5Sp6jCkxKgIQQQoiyJQGQq+RrBC1tgIQQQoiyJQGQi9gbQUsAJIQQQpQ5CYBcxJyjBkKUXmBCCCFE2ZMAyEVyMtMByMYTf09pBC2EEEKUJQmAXCQ3Kw0Ai9EbvV7n4tQIIYQQVYsEQC5iylZVYDp3bxenRAghhKh6JAByEXOOqgLTu/u4OCVCCCFE1SMBkItYclQvMIOnlAAJIYQQZU0CIBfRclUVmLunn4tTIoQQQlQ9EgC5iC4vCwB3L18Xp0QIIYSoeiQAchGDNQDy9JESICGEEKKsSQDkIm5mFQB5+fi7OCVCCCFE1SMBkIsYLdkA+PhKACSEEEKUNQmAXEBnycNHU93gff2ruTYxQgghRBUkAZALBGYcxp08zmr+eNeIcnVyhBBCiCpHAiAXqJG2G4A1lmi8PdxcnBohhBCi6pEAyAWC0/YAsNrSAg+jwcWpEUIIIaoeCYDKWnYK1TOPArDaHI2nUU6BEEIIUdbk6lvGdMdXo0fjsCWcRF0Q7gY5BUIIIURZk6tvGdMdXwHAaks0Hm56dDqdi1MkhBBCVD0SAJUx/bHlgGr/4yntf4QQQgiXkACoLF2MQ3f+KBb0bLA0xdNNAiAhhBDCFSQAKkuJe9H0RhI865OGNx7SAFoIIYRwCbkCl6XGN5P37GH+DH4MQEqAhBBCCBeRAKisuftw1i0EQLrACyGEEC4iV2AXMFnUfw8pARJCCCFcQgIgF7AHQFICJIQQQriEXIFdIM8aAEk3eCGEEMI1JABygVx7FZi8/UIIIYQryBXYBUxSAiSEEEK4lARALpBnUdNfSC8wIYQQwjXkCuwC0gtMCCGEcC0JgFzAUQUmb78QQgjhCnIFdgF7ACQlQEIIIYRLSADkAtIIWgghhHAtCYBcQAZCFEIIIVxLrsAuIFVgQgghhGtJAOQCUgIkhBBCuJZcgV3AZB0HSLrBCyGEEK4hAZALSDd4IYQQwrXkCuwCeZr6L73AhBBCCNdweQA0depUoqKi8PT0JCYmhlWrVhW57bBhw9DpdAX+mjdvbt9m5syZhW6TnZ1dFtkpEZNMhiqEEEK4lEuvwHPnzmX06NGMHz+ebdu20a1bN/r27UtcXFyh23/88cfEx8fb/06ePElgYCB33XWX03b+/v5O28XHx+Pp6VkWWSqRXBkHSAghhHAplwZAkyZNYvjw4YwYMYKmTZsyefJk6tSpw7Rp0wrdPiAggNDQUPvf5s2buXDhAg899JDTdjqdzmm70NDQsshOieVJACSEEEK4lJurXjg3N5ctW7bw0ksvOS3v3bs3a9euLdExpk+fzk033URERITT8vT0dCIiIjCbzbRu3Zq33nqLNm3aFHmcnJwccnJy7M9TU1MBMJlMmEymkmapREwmk70KzICl1I/varb8VLZ85Sd5rPgqe/5A8lgZVPb8Qenn8UqOo9M0TSuVV71CZ86coVatWqxZs4YuXbrYl7/zzjvMmjWLAwcOFLt/fHw8derU4YcffmDw4MH25evXr+fw4cO0aNGC1NRUPv74YxYuXMiOHTto2LBhocd64403mDBhQoHlP/zwA97e3leZw8JZNBizXsWd/9cuD19jqR5eCCGEqLIyMzO59957SUlJwd/fv9htXVYCZKPT6Zyea5pWYFlhZs6cSbVq1Rg0aJDT8k6dOtGpUyf7865du9K2bVs+/fRTPvnkk0KPNW7cOMaOHWt/npqaSp06dejdu/dl38ArlZKRDetXAjCgb2+83V1+CkqVyWQiNjaWXr16YTRWzuhO8ljxVfb8geSxMqjs+YPSz6OtBqckXHb1DQ4OxmAwkJCQ4LQ8KSmJkJCQYvfVNI0ZM2YwdOhQ3N3di91Wr9fTvn17Dh06VOQ2Hh4eeHh4FFhuNBpL/UNnJtf+2NfLE4P+8sFeRXQt3rvyRvJY8VX2/IHksTKo7PmD0svjlRzDZY2g3d3diYmJITY21ml5bGysU5VYYVasWMHhw4cZPnz4ZV9H0zS2b99OWFjYf0pvacmxtoA2GnSVNvgRQgghyjuX1r+MHTuWoUOH0q5dOzp37syXX35JXFwcI0eOBFTV1OnTp/n222+d9ps+fTodO3YkOjq6wDEnTJhAp06daNiwIampqXzyySds376dzz77rEzydDk5eWZApsEQQgghXMmlAdCQIUM4d+4cb775JvHx8URHR7Nw4UJ7r674+PgCYwKlpKQwb948Pv7440KPefHiRR599FESEhIICAigTZs2rFy5kg4dOlzz/JREtrULmEyDIYQQQriOy1vgjho1ilGjRhW6bubMmQWWBQQEkJmZWeTxPvroIz766KPSSl6pyzbZSoAkABJCCCFcRa7CZczWBkiqwIQQQgjXkQCojNkCIKkCE0IIIVxHrsJlTKrAhBBCCNeTq3AZczSCliowIYQQwlUkACpjjjZA8tYLIYQQriJX4TJmGwdISoCEEEII15EAqIzZqsCkBEgIIYRwHbkKlzHpBSaEEEK4nlyFy1iOSabCEEIIIVxNAqAyli2NoIUQQgiXk6twGXM0gpa3XgghhHAVuQqXMUcjaKkCE0IIIVxFAqAylmMLgKQESAghhHAZuQqXMXsVmJQACSGEEC4jAVAZy5Zu8EIIIYTLyVW4jMlkqEIIIYTryVW4jNnnApOpMIQQQgiXkQCojNkaQXtKCZAQQgjhMnIVLmPZMhmqEEII4XISAJWxHJkMVQghhHA5uQqXsRyZCkMIIYRwObkKlzGpAhNCCCFcTwKgMqRpWr6pMOStF0IIIVxFrsJlKNdssT+WgRCFEEII15GrcBmylf6ATIYqhBBCuJIEQGUoxzoKtA4No0Hn4tQIIYQQVZcEQGXI1gPMqAedTgIgIYQQwlUkACpDtnnApPmPEEII4VpyKS5DtjZA0gFMCCGEcC25FJehnDwpARJCCCHKA7kUl6GGIX58+1AM99Q3uzopQgghRJUmAVAZCvAy0rleEA38XZ0SIYQQomqTAEgIIYQQVY4EQEIIIYSociQAEkIIIUSVIwGQEEIIIaocCYCEEEIIUeVIACSEEEKIKkcCICGEEEJUORIACSGEEKLKkQBICCGEEFWOBEBCCCGEqHIkABJCCCFElSMBkBBCCCGqHAmAhBBCCFHlSAAkhBBCiCpHAiAhhBBCVDkSAAkhhBCiypEASAghhBBVjgRAQgghhKhyJAASQgghRJXj8gBo6tSpREVF4enpSUxMDKtWrSpy22HDhqHT6Qr8NW/e3Gm7efPm0axZMzw8PGjWrBkLFiy41tkQQgghRAXi0gBo7ty5jB49mvHjx7Nt2za6detG3759iYuLK3T7jz/+mPj4ePvfyZMnCQwM5K677rJvs27dOoYMGcLQoUPZsWMHQ4cOZfDgwWzYsKGssiWEEEKIcs6lAdCkSZMYPnw4I0aMoGnTpkyePJk6deowbdq0QrcPCAggNDTU/rd582YuXLjAQw89ZN9m8uTJ9OrVi3HjxtGkSRPGjRvHjTfeyOTJk8soV0IIIYQo79xc9cK5ubls2bKFl156yWl57969Wbt2bYmOMX36dG666SYiIiLsy9atW8eYMWOctuvTp0+xAVBOTg45OTn25ykpKQCcP38ek8lUorSUlMlkIjMzk3PnzmE0Gkv12OVBZc8fSB4rg8qeP5A8VgaVPX9Q+nlMS0sDQNO0y27rsgAoOTkZs9lMSEiI0/KQkBASEhIuu398fDyLFi3ihx9+cFqekJBwxcecOHEiEyZMKLA8KirqsukQQgghRPmSlpZGQEBAsdu4LACy0el0Ts81TSuwrDAzZ86kWrVqDBo06D8fc9y4cYwdO9b+3GKxcP78eYKCgkqUliuRmppKnTp1OHnyJP7+/qV67PKgsucPJI+VQWXPH0geK4PKnj8o/TxqmkZaWhrh4eGX3dZlAVBwcDAGg6FAyUxSUlKBEpxLaZrGjBkzGDp0KO7u7k7rQkNDr/iYHh4eeHh4OC2rVq1aCXJx9fz9/SvtBxoqf/5A8lgZVPb8geSxMqjs+YPSzePlSn5sXNYI2t3dnZiYGGJjY52Wx8bG0qVLl2L3XbFiBYcPH2b48OEF1nXu3LnAMZcsWXLZYwohhBCi6nBpFdjYsWMZOnQo7dq1o3Pnznz55ZfExcUxcuRIQFVNnT59mm+//dZpv+nTp9OxY0eio6MLHPOZZ56he/fuvPvuu9x666389ttvLF26lNWrV5dJnoQQQghR/rk0ABoyZAjnzp3jzTffJD4+nujoaBYuXGjv1RUfH19gTKCUlBTmzZvHxx9/XOgxu3Tpwpw5c3jllVd49dVXqV+/PnPnzqVjx47XPD8l4eHhweuvv16gyq2yqOz5A8ljZVDZ8weSx8qgsucPXJtHnVaSvmJCCCGEEJWIy6fCEEIIIYQoaxIACSGEEKLKkQBICCGEEFWOBEBCCCGEqHIkACpDU6dOJSoqCk9PT2JiYli1apWrk3TVJk6cSPv27fHz86NmzZoMGjSIAwcOOG0zbNgwdDqd01+nTp1clOIr88YbbxRIe2hoqH29pmm88cYbhIeH4+XlxQ033MCePXtcmOIrFxkZWSCPOp2OJ554AqiY52/lypUMHDiQ8PBwdDodv/76q9P6kpy3nJwcnnrqKYKDg/Hx8eGWW27h1KlTZZiLohWXP5PJxIsvvkiLFi3w8fEhPDycBx54gDNnzjgd44YbbihwXu++++4yzknRLncOS/K5LM/nEC6fx8K+lzqdjvfff9++TXk+jyW5PpSH76IEQGVk7ty5jB49mvHjx7Nt2za6detG3759C3TzryhWrFjBE088wfr164mNjSUvL4/evXuTkZHhtN3NN99MfHy8/W/hwoUuSvGVa968uVPad+3aZV/33nvvMWnSJKZMmcKmTZsIDQ2lV69e9on4KoJNmzY55c82gOhdd91l36ainb+MjAxatWrFlClTCl1fkvM2evRoFixYwJw5c1i9ejXp6ekMGDAAs9lcVtkoUnH5y8zMZOvWrbz66qts3bqV+fPnc/DgQW655ZYC2z7yyCNO5/WLL74oi+SXyOXOIVz+c1mezyFcPo/58xYfH8+MGTPQ6XTccccdTtuV1/NYkutDufguaqJMdOjQQRs5cqTTsiZNmmgvvfSSi1JUupKSkjRAW7FihX3Zgw8+qN16662uS9R/8Prrr2utWrUqdJ3FYtFCQ0O1//3vf/Zl2dnZWkBAgPb555+XUQpL3zPPPKPVr19fs1gsmqZV7POnaZoGaAsWLLA/L8l5u3jxomY0GrU5c+bYtzl9+rSm1+u1v//+u8zSXhKX5q8wGzdu1ADtxIkT9mXXX3+99swzz1zbxJWSwvJ4uc9lRTqHmlay83jrrbdqPXv2dFpWkc7jpdeH8vJdlBKgMpCbm8uWLVvo3bu30/LevXuzdu1aF6WqdKWkpAAQGBjotHz58uXUrFmTRo0a8cgjj5CUlOSK5F2VQ4cOER4eTlRUFHfffTdHjx4F4NixYyQkJDidTw8PD66//voKez5zc3P5/vvvefjhh50mAK7I5+9SJTlvW7ZswWQyOW0THh5OdHR0hTy3KSkp6HS6AnMbzp49m+DgYJo3b85zzz1XoUouofjPZWU7h4mJifz111+FTv1UUc7jpdeH8vJddPls8FVBcnIyZrO5wISsISEhBSZurYg0TWPs2LFcd911TtOT9O3bl7vuuouIiAiOHTvGq6++Ss+ePdmyZUu5H9m0Y8eOfPvttzRq1IjExETefvttunTpwp49e+znrLDzeeLECVck9z/79ddfuXjxIsOGDbMvq8jnrzAlOW8JCQm4u7tTvXr1AttUtO9qdnY2L730Evfee6/TJJP33XcfUVFRhIaGsnv3bsaNG8eOHTsKzKFYXl3uc1mZziHArFmz8PPz4/bbb3daXlHOY2HXh/LyXZQAqAzlv7MG9cG4dFlF9OSTT7Jz584C860NGTLE/jg6Opp27doRERHBX3/9VeDLXN707dvX/rhFixZ07tyZ+vXrM2vWLHuDy8p0PqdPn07fvn0JDw+3L6vI5684V3PeKtq5NZlM3H333VgsFqZOneq07pFHHrE/jo6OpmHDhrRr146tW7fStm3bsk7qFbvaz2VFO4c2M2bM4L777sPT09NpeUU5j0VdH8D130WpAisDwcHBGAyGAlFrUlJSgQi4onnqqaf4/fffWbZsGbVr1y5227CwMCIiIjh06FAZpa70+Pj40KJFCw4dOmTvDVZZzueJEydYunQpI0aMKHa7inz+gBKdt9DQUHJzc7lw4UKR25R3JpOJwYMHc+zYMWJjY51KfwrTtm1bjEZjhT2vl34uK8M5tFm1ahUHDhy47HcTyud5LOr6UF6+ixIAlQF3d3diYmIKFE3GxsbSpUsXF6Xqv9E0jSeffJL58+fz77//EhUVddl9zp07x8mTJwkLCyuDFJaunJwc9u3bR1hYmL3YOf/5zM3NZcWKFRXyfH7zzTfUrFmT/v37F7tdRT5/QInOW0xMDEaj0Wmb+Ph4du/eXSHOrS34OXToEEuXLiUoKOiy++zZsweTyVRhz+uln8uKfg7zmz59OjExMbRq1eqy25an83i560O5+S6WSlNqcVlz5szRjEajNn36dG3v3r3a6NGjNR8fH+348eOuTtpVefzxx7WAgABt+fLlWnx8vP0vMzNT0zRNS0tL05599llt7dq12rFjx7Rly5ZpnTt31mrVqqWlpqa6OPWX9+yzz2rLly/Xjh49qq1fv14bMGCA5ufnZz9f//vf/7SAgABt/vz52q5du7R77rlHCwsLqxB5y89sNmt169bVXnzxRaflFfX8paWladu2bdO2bdumAdqkSZO0bdu22XtBleS8jRw5Uqtdu7a2dOlSbevWrVrPnj21Vq1aaXl5ea7Kll1x+TOZTNott9yi1a5dW9u+fbvT9zInJ0fTNE07fPiwNmHCBG3Tpk3asWPHtL/++ktr0qSJ1qZNm3KRP00rPo8l/VyW53OoaZf/nGqapqWkpGje3t7atGnTCuxf3s/j5a4PmlY+vosSAJWhzz77TIuIiNDc3d21tm3bOnUZr2iAQv+++eYbTdM0LTMzU+vdu7dWo0YNzWg0anXr1tUefPBBLS4uzrUJL6EhQ4ZoYWFhmtFo1MLDw7Xbb79d27Nnj329xWLRXn/9dS00NFTz8PDQunfvru3atcuFKb46ixcv1gDtwIEDTssr6vlbtmxZoZ/LBx98UNO0kp23rKws7cknn9QCAwM1Ly8vbcCAAeUm38Xl79ixY0V+L5ctW6ZpmqbFxcVp3bt31wIDAzV3d3etfv362tNPP62dO3fOtRnLp7g8lvRzWZ7PoaZd/nOqaZr2xRdfaF5eXtrFixcL7F/ez+Plrg+aVj6+izprYoUQQgghqgxpAySEEEKIKkcCICGEEEJUORIACSGEEKLKkQBICCGEEFWOBEBCCCGEqHIkABJCCCFElSMBkBBCCCGqHAmAhBCiBHQ6Hb/++qurkyGEKCUSAAkhyr1hw4ah0+kK/N18882uTpoQooJyc3UChBCiJG6++Wa++eYbp2UeHh4uSo0QoqKTEiAhRIXg4eFBaGio01/16tUBVT01bdo0+vbti5eXF1FRUfz8889O++/atYuePXvi5eVFUFAQjz76KOnp6U7bzJgxg+bNm+Ph4UFYWBhPPvmk0/rk5GRuu+02vL29adiwIb///vu1zbQQ4pqRAEgIUSm8+uqr3HHHHezYsYP777+fe+65h3379gGQmZnJzTffTPXq1dm0aRM///wzS5cudQpwpk2bxhNPPMGjjz7Krl27+P3332nQoIHTa0yYMIHBgwezc+dO+vXrx3333cf58+fLNJ9CiFJSatOqCiHENfLggw9qBoNB8/Hxcfp78803NU1Ts0+PHDnSaZ+OHTtqjz/+uKZpmvbll19q1atX19LT0+3r//rrL02v12sJCQmapmlaeHi4Nn78+CLTAGivvPKK/Xl6erqm0+m0RYsWlVo+hRBlR9oACSEqhB49ejBt2jSnZYGBgfbHnTt3dlrXuXNntm/fDsC+ffto1aoVPj4+9vVdu3bFYrFw4MABdDodZ86c4cYbbyw2DS1btrQ/9vHxwc/Pj6SkpKvNkhDChSQAEkJUCD4+PgWqpC5Hp9MBoGma/XFh23h5eZXoeEajscC+FovlitIkhCgfpA2QEKJSWL9+fYHnTZo0AaBZs2Zs376djIwM+/o1a9ag1+tp1KgRfn5+REZG8s8//5RpmoUQriMlQEKICiEnJ4eEhASnZW5ubgQHBwPw888/065dO6677jpmz57Nxo0bmT59OgD33Xcfr7/+Og8++CBvvPEGZ8+e5amnnmLo0KGEhIQA8MYbbzBy5Ehq1qxJ3759SUtLY82aNTz11FNlm1EhRJmQAEj8f/t2i+IwEIBh+IuNrkhPUKjPPQKpr6+p6TmSUwTiYtub9Ch1WbGwsHJZaAnzPHLEMONe5gc24X6/Z7/f/xo7HA55Pp9Jvn9ozfOcy+WSpmkyTVOOx2OSpK7rPB6PXK/XtG2buq7T932GYfiZ63w+5/V6ZRzH3G637Ha7nE6n920QeKtqXdf104sA+I+qqrIsS7qu+/RSgI3wBggAKI4AAgCK4w0QsHlu8oG/cgIEABRHAAEAxRFAAEBxBBAAUBwBBAAURwABAMURQABAcQQQAFAcAQQAFOcLaoX2JmAgP60AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "### Plot\n",
    "import matplotlib.pyplot as plt\n",
    "import pandas as pd\n",
    "\n",
    "metrics = pd.read_csv(f\"{trainer.logger.log_dir}/metrics.csv\")\n",
    "\n",
    "aggreg_metrics = []\n",
    "agg_col = \"epoch\"\n",
    "for i, dfg in metrics.groupby(agg_col):\n",
    "    agg = dict(dfg.mean())\n",
    "    agg[agg_col] = i\n",
    "    aggreg_metrics.append(agg)\n",
    "\n",
    "df_metrics = pd.DataFrame(aggreg_metrics)\n",
    "df_metrics[[\"train_loss\", \"val_loss\"]].plot(\n",
    "    grid=True, legend=True, xlabel=\"Epoch\", ylabel=\"Loss\"\n",
    ")\n",
    "\n",
    "\n",
    "df_metrics[[\"train_acc\", \"val_acc\"]].plot(\n",
    "    grid=True, legend=True, xlabel=\"Epoch\", ylabel=\"ACC\"\n",
    ")\n",
    "\n",
    "plt.ylim([0.7, 1.0])\n",
    "\n",
    "plt.savefig('2-step-decay_acc.pdf')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "0df61ef8",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Restoring states from the checkpoint path at logs/my-model/version_18/checkpoints/epoch=77-step=35100.ckpt\n",
      "Loaded model weights from checkpoint at logs/my-model/version_18/checkpoints/epoch=77-step=35100.ckpt\n",
      "/Users/sebastianraschka/miniforge3/envs/dl-fundamentals/lib/python3.9/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:231: PossibleUserWarning: The dataloader, test_dataloader 0, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 10 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.\n",
      "  rank_zero_warn(\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7074c29ccda148ff99e9a49806ed7cef",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Testing: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n",
       "┃<span style=\"font-weight: bold\">        Test metric        </span>┃<span style=\"font-weight: bold\">       DataLoader 0        </span>┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩\n",
       "│<span style=\"color: #008080; text-decoration-color: #008080\">         test_acc          </span>│<span style=\"color: #800080; text-decoration-color: #800080\">    0.8987500071525574     </span>│\n",
       "└───────────────────────────┴───────────────────────────┘\n",
       "</pre>\n"
      ],
      "text/plain": [
       "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n",
       "┃\u001b[1m \u001b[0m\u001b[1m       Test metric       \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m      DataLoader 0       \u001b[0m\u001b[1m \u001b[0m┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩\n",
       "│\u001b[36m \u001b[0m\u001b[36m        test_acc         \u001b[0m\u001b[36m \u001b[0m│\u001b[35m \u001b[0m\u001b[35m   0.8987500071525574    \u001b[0m\u001b[35m \u001b[0m│\n",
       "└───────────────────────────┴───────────────────────────┘\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "[{'test_acc': 0.8987500071525574}]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trainer.test(model=lightning_model, datamodule=dm, ckpt_path=\"best\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "1c17a3c0",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Restoring states from the checkpoint path at logs/my-model/version_18/checkpoints/last.ckpt\n",
      "Loaded model weights from checkpoint at logs/my-model/version_18/checkpoints/last.ckpt\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f33a49ed2858459dac8774feb94c0d65",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Testing: 0it [00:00, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n",
       "┃<span style=\"font-weight: bold\">        Test metric        </span>┃<span style=\"font-weight: bold\">       DataLoader 0        </span>┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩\n",
       "│<span style=\"color: #008080; text-decoration-color: #008080\">         test_acc          </span>│<span style=\"color: #800080; text-decoration-color: #800080\">    0.8932499885559082     </span>│\n",
       "└───────────────────────────┴───────────────────────────┘\n",
       "</pre>\n"
      ],
      "text/plain": [
       "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n",
       "┃\u001b[1m \u001b[0m\u001b[1m       Test metric       \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m      DataLoader 0       \u001b[0m\u001b[1m \u001b[0m┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩\n",
       "│\u001b[36m \u001b[0m\u001b[36m        test_acc         \u001b[0m\u001b[36m \u001b[0m│\u001b[35m \u001b[0m\u001b[35m   0.8932499885559082    \u001b[0m\u001b[35m \u001b[0m│\n",
       "└───────────────────────────┴───────────────────────────┘\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "[{'test_acc': 0.8932499885559082}]"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trainer.test(model=lightning_model, datamodule=dm, ckpt_path=\"last\")"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
